Python如何设置User-Agent和代理IP

2022-05-10 代理百科 0 0

爬虫为了对抗反爬虫策略,设置User-Agent和代理IP是必须的一项工作,常见的一些User-Agent这里就不再赘述了,之前写过一篇《

收集一些常见浏览器的User Agent》,可以参考一下,那么Python如何设置User-Agent和代理IP呢?

一、设置User-Agent

1、创建Request对象时指定headers

url = 'https://www.zdaye.com/'

head = {}

head['User-Agent'] = 'Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML,  like Gecko) Chrome/18.0.1025.166  Safari/535.19'

req = request.Request(url, headers=head)

#传入创建好的Request对象

response = request.urlopen(req)

html = response.read().decode('utf-8')

print(html)

2、创建Request对象后使用add_header

req.add_header('User-Agent', 'Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166  Safari/535.19')

# 参数为 (key, value) 

二、设置代理IP

使用install_opener方法之后,会将程序默认的urlopen方法替换掉。也就是说,如果使用install_opener之后,在该文件中,再次调用urlopen会使用自己创建好的opener。如果不想替换掉,只是想临时使用一下,可以使用opener.open(url),这样就不会对程序默认的urlopen有影响。

from urllib import request

if __name__ == "__main__":

url = 'https://www.zdaye.com/'

#这是代理IP

proxy = {'http':'168.68.8.88:66666'}

#创建ProxyHandler

proxy_support = request.ProxyHandler(proxy)

#创建Opener

opener = request.build_opener(proxy_support)

#添加User Angent

opener.addheaders = [('User-Agent','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36')]

#安装OPener

request.install_opener(opener)

#使用自己安装好的Opener

response = request.urlopen(url)

html = response.read().decode("utf-8")

print(html)

发表评论
评论列表