
01 头信息字段格式
基本格式:”字段名:字段值“
1)字段1: Accept: text/html,application/xhtml+xml,application/xml; q=0.9,/; q=0.8
这一行字段的信息表示浏览器可以支持text/html,application/xhtml+xml,application/xml,/等内容类型,支持的优先顺序从左到右依次排列。
2)字段2:Accept-Encoding: gzip, deflate
这一行字段的信息表示浏览器可以支持gzip,deflate等压缩编码。
3)字段3:Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
这一行字段的信息表示浏览器可以支持zh-CN,zh,en-US,en等语言。
4)字段4:User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64;rv:47.0) Gecko/20100101Firefox/47.0
这一行字段的信息表示为对应的用户代理信息是Mozilla/5.0 (Windows NT 6.1; WOW64;rv:47.0) Gecko/20100101Firefox/47.0。
5)字段5:Connection:keep-alive
这一行字段的信息表示客户端与服务器的连接是持久性连接。
6)字段6:Host:www.baidu.com
5)字段7:Referer:网址
import urllib.request
import http.cookiejar
url= "http://xx.xx.com/xxx/xxx.html"
#以字典的形式设置headers
headers={ "Accept":" text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language":" zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3",
"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36 SE 2.X MetaSr 1.0",
"Connection": "keep-alive",
"referer":"http://xx.xx.com/"}
# 设置cookie
cjar=http.cookiejar.CookieJar()
proxy= urllib.request.ProxyHandler({'http':"127.0.0.1:8888"})
opener = urllib.request.build_opener(proxy, urllib.request.HTTPHandler,urllib.request.HTTPCookieProcessor(cjar))
# 建立空列表,以指定格式存储头信息
headall=[]
# 通过for循环遍历字典,构造出指定格式的headers信息
for key,value in headers.items():
item=(key,value)
headall.append(item)
# 将指定格式的headers信息添加号
opener.addheaders = headall
# 将opener安装为全局
urllib.request.install_opener(opener)
data=urllib.request.urlopen(url).read()
fhandle=open("./6.html","wb")
fhandle.write(data)
fhandle.close()本文分享自 Python爬虫数据分析挖掘 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!