对于写爬虫来讲,模拟浏览器是发请求的时候做的最多的事情了,最常见的模拟浏览器无非就是伪装headers:
In [23]: url = 'http://xlzd.me'
In [24]: headers = {'User-Agent': 'my custom user agent', 'Cookie': 'haha'}
In [25]: requests.get(url, headers=headers)
拓展:
怎样取出HTTP response里面的内容呢?
In [7]: r = requests.get('http://xlzd.me')
In [8]: r.encoding
Out[8]: 'UTF-8'
In [9]: r.headers
Out[9]: {'Content-Encoding': 'gzip', 'Transfer-Encoding': 'chunked', 'Vary': 'Accept-Encoding', 'Server': 'nginx', 'Connection': 'keep-alive', 'Date': 'Fri, 11 Dec 2015 06:42:31 GMT', 'Content-Type': 'text/html; charset=UTF-8', 'X-Pingback': 'http://xlzd.me/action/xmlrpc'}
In [10]: r.cookies
Out[10]:
In [11]: r.text
Out[11]: u'\n\n\trequests会自动对响应内容编码,所以就可以通过r.text取出响应文本了。对于别等响应内容(文件、图片、...),则可以通过r.content取出来。对于json内容,也可以通过r.json()来取。