网页爬虫 - python爬取大众点评网伪装浏览器返回出现403错误
PHPz
PHPz 2017-04-17 17:43:45
0
2
2070

hi,各位好,我在爬大众点评的这个网页http://www.dianping.com/search/keyword/2/75_%E6%96%B0%E4%B8%9C%E6%96%B9,用的request包获取网页源码,header主要添加了user-agent和cookie,但为什么总是返回错误?求助,谢谢各位了!
PS:用curl可以返回正常的源码,没有被封IP

import requests

def gethtml(url, headers):
    html = requests.get(url, headers = headers)
    html.encoding = 'utf-8'
    return html.text

head = {'User_Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2723.3 Safari/537.36',
        'Cookie': 'PHOENIX_ID=0a650c81-154a0633f47-a97843; _hc.v="\"e27e18eb-3a3d-4b40-b06a-cbe624c96048.1462979739\""; s_ViewType=10; JSESSIONID=877B00919AD417544F72F5A9953E54B4; aburl=1; cy=2; cye=beijing'}

url = 'http://www.dianping.com/search/keyword/2/75_%E6%96%B0%E4%B8%9C%E6%96%B9'
html = gethtml(url, head)
print(html)
PHPz
PHPz

学习是最好的投资!

全員に返信(2)
伊谢尔伦

解決しました。ヘッダーに
{'Accept': 'application/json, text/javascript'}を追加すると正常に戻ることができます

いいねを押す +0
巴扎黑

Cookie またはユーザー エージェントの変更が機能しない場合は、通常の CURL を試してください。もしかしたらIPが禁止されているのでしょうか?

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート