2017-10-05 119 views
1

尝试从网站获取内容:www.arrow.com但我的程序被冻结。我根本找不到任何回应。无法使用Python请求检索网页的HTML内容

我已经使用了curl,wget和相同的问题。我得到:

<head><title>Document Moved</title></head> 
<body><h1>Object Moved</h1>This document may be found <a HREF="https://www.arrow.com/en/products/search/">here</a></body> 

我没有得到使用POSTMAN的响应,我意识到响应是用gzip编码的。在网站上,许多人建议添加一些标题来解决这个问题,但迄今为止我还没有成功。

import requests 
url = 'http://www.arrow.com/en/products/search/' 
params = {'q': 'ISOW7841FDWER'} 
headers = { 
     'Accept-Encoding': "gzip,x-gzip,deflate,sdch,compress", 
     'Accept-Content': 'gzip', 
     'HTTP-Connection': 'keep-alive', 
     'Accept-Language': "en-US,en;q=0.8", 
    } 
r = requests.get(url, params=params, headers=headers) 
print(r.url) 
print(r.text) 

回答

1

你并不需要在所有headers这些项目,但你需要欺骗用户代理,否则网站将不会响应。

import requests 

url = 'https://www.arrow.com/en/products/search' 
params = {'q': 'ISOW7841FDWER'} 
headers = {'User-Agent': 'Mozilla/5'} 
r = requests.get(url, params=params, headers=headers) 
print(r.url) 
print(r.text) 
相关问题