用python零基础写爬虫--编写第一个网络爬虫 -2 设置用户代理

Posted 逍遥游2

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用python零基础写爬虫--编写第一个网络爬虫 -2 设置用户代理相关的知识,希望对你有一定的参考价值。

1.设置用户代理

默认情况下,urliib2使用python-urllib、2.7 作为用户代理下载网页内容,其中2.7是python的版本号。为避免一些网站禁封这个默认的用户代理,确保下载更加可靠,我们需要控制用户代理的设定。下面代码对download函数设定了一个名称为 “wswp” 的用户代理。

import urllib2
def download(url,user_agent=‘wswp‘, num_retries=2):
print ‘downloading:‘,url
headers={‘User-agent‘:user_agent}
request=urllib2.Request(url,headers=headers)
try:
html=urllib2.urlopen(url).read()
except urllib2.URLError as e:
print ‘download error:‘, e.reason
html=None
if num_retries>0:
if hasattr(e, ‘code‘) and 500<=e.code<600:
#recursively retry 5XX http errors
return download(url, user_agent,num_retries-1)
return html


以上是关于用python零基础写爬虫--编写第一个网络爬虫 -2 设置用户代理的主要内容,如果未能解决你的问题,请参考以下文章

用python写网络爬虫 -从零开始 1 编写第一个网络爬虫

用python写网络爬虫 -从零开始 2 编写网站地图爬虫

用python写网络爬虫 -从零开始 3 编写ID遍历爬虫

零基础写python爬虫之使用Scrapy框架编写爬虫

用python 写网络爬虫--零基础

零基础自学用Python 3开发网络爬虫: 伪装浏览器君