2017-11-18 17 views
0

に表示されていないと、それはhtmlのだが、次のようになります。Pythonの要求:ページのHTMLは、私がページにアクセスしようとしていますテキスト形式

?2?pɢ???=???I????܉??s???? [??AX#?`s??5???2`?| ,q?ɲ?=h?}VTŬ~?Y?}u3cx?pȢ?K_Ol&ɡ??'N??Y??n5?890??G???&$?%J#?ܩ?ѡ 
1?y??? 
$] &'ι?\[email protected]?C?$??K? ??iu"T?M 
    ?6>?&5?:??sJ???xi???V??N??????3R7u??ǹ??7qs??<*[email protected]? 
EWu}??'F??Z??߶O?????Fc۰?S???h??/????h???[kS(      f?\˹[email protected]???7_~~??*'?Jq??i?͛?J?W?T?Y]S??ӫ?~??k՘H?? 
w?L??ws??M?h?V?؊<[ ? 
??A?G?w? 

それは何ですか?それはいくつかのエンコード/デコードのことですか?どのようにHTMLを表示するには?

コードはここにある:

import requests 
from bs4 import BeautifulSoup 
import json 



headers_initial = { 
     'user-agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36', 
     'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8', 
     'accept-encoding': 'gzip, deflate, br', 
     'accept-language': 'en-US,en;q=0.9', 
     'cache-control': 'no-cache', 
     'upgrade-insecure-requests': '1', 
    }  
r = requests.get('https://www.example.com/', headers=headers_initial) 
     if r.status_code == 200: 
      html = r.text.strip() 
      print(html) 
+1

関連コードを表示 –

+0

@Argus done ..コードが追加されました。 – Volatil3

+0

'headers_initial'とは何ですか? – Derlin

答えて

2

問題は、あなたのヘッダから来ています。 accept-encodingを削除するだけで正常に動作します。

編集accept-encodingは圧縮データを処理できるかどうかを指定します。 requestsではないので、ヘッダーを指定する必要がある場合は、identityプロパティを使用してください。つまり、「圧縮せずにページを送ってください」という意味です。

+0

Oh My God !!ブラウザにアクセスしているページにはこのような問題はありません – Volatil3

+1

ブラウザは小さなPythonライブラリと同じ機能を持っていません:) – Derlin

+0

また、ブラウザはその見出しを送信していませんでした。なぜあなたはそれを送っていたのですか? –

関連する問題