2016-07-26 1 views
1

私はリクエストモジュールをPythonで使用していますが、問題が残っています。Python、リクエストセッション、HTMLヘッドが表示されない

私は、セッションクラスを使用してウェブサイト(http://coinplants.com)にログインするリクエストを使用します。ログイン後、私はページのhtmlを読み込もうとしていますが、レスポンスオブジェクトにはhtmlボディのみが表示されていますが、htmlヘッドでは表示されません。私はメタタグでhtmlの頭を取得したいと思います。私が間違って何をしているのか?事前に

s = requests.Session() 
r = s.post('http://coinplants.com', data=postData) 
print r.text 

感謝:)私が使用して真正トークンをスクラップする

LOGIN

BeautifulSoup

soup = BeautifulSoup(r.text, 'lxml') 
finding = soup.find('input', {'name' : 'authenticity_token'}) 
postData = {'utf8' : '%E2%9C%93', 'authenticity_token' : '', 
     'account[email]' : self.username, 'account[password]' : self.password, 
     'account[remember_me]' : '0', 'commit' : 'Log+in'} 
postData['authenticity_token'] = finding['value'] 
r = s.post('http://coinplants.com/accounts/sign_in', data=postData) 

ソリューション

さて、私は私の問題の解決策を見つけました。なぜセッションが私にHTMLコンテンツ全体を与えないのか分かりません。私はセッションオブジェクトからクッキーを取り出し、リクエストオブジェクトに追加しました。

cookies = {'_faucet:session' : s.cookies['_faucet_session']} 
r = requests.get('http://coinplants.com', cookies=cookies) 
print r.text 

はセッションオブジェクトです。応答オブジェクトのテキストを印刷すると、ヘッドタグを含むHTMLコンテンツ全体が表示されます。誰かがセッションオブジェクトがそれを表示していない理由を知っている場合は、私に教えてください:)

+0

ログインが成功しましたか? –

+0

はい、成功です。私はログイン後にhtmlをチェックした。 – Donut

+0

投稿データから明らかにあなたの電子メール/パスワードを引いたものを追加できますか?私はcsrfトークンが必要なので、あなたのログインが成功したかどうかわからない場合は、 –

答えて

-1

取得しているreq.urlを印刷し、getを使用してそのURLをスクラップしようとします。

url = r.url 
req = s.get(url) 
print req.text 

あなたの問題を解決しているかどうかを確認してください。そうでなければブラウザのr.urlに行き、快適なブラウザーを使って要素を調べて、ヘッドタグが表示されているかどうかを確認します。それが助けてくれることを願っています

+0

これは役に立ちません。 url = r.urlはhttp://coinplants.comを返します これはGETリクエストを送信するURLです。 FFを使用して、私はHTMLを見ていると私はそこにHTMLの頭とHTMLの本体タグと両方のコンテンツを参照してください。すぐに私はリクエストを使用してHTMLヘッダータグを取得しません。( – Donut

0

あなたが正しく理解しているときは、ページのヘッダーを探しています。

あなたは

print r.headers

を入力するときは、ページのヘッダを取得する必要があります。

あなたの質問が間違っていると思いますか?

このページは、リクエストモジュールの詳細については非常に参考になります。 http://docs.python-requests.org/en/master/

+0

r.headers は、サーバーがHTMLヘッダータグではなく私に送信するHTTPヘッダーを返します。間違っていると思います。しかし、私はリンクを見て、そこに何かを見つけることを願っています。 – Donut

+0

ああ、私は申し訳ありませんが、リンクがあなたを助けてくれることを願っています:-) – Melody

+0

[link](http://stackoverflow.com/questions/) 9554947/getting-head-content-with-python-requests)はこの質問を見ています。 – Melody

関連する問題