Python---更加高级的来伪装浏览器

更加高级的来伪装浏览器

在学习高级伪装浏览器技术之前,我们必须要对Headers有足够的了解。

头部字段的基本格式为:"字段名:字段值"

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept字段主要是来表示浏览器支持内容的类型

text/html表示的是html文档

application/xhtml+xml表示的是xhtml文档

application/xml表示的是xml文档

q代表的是权重系数,介于0-1之间

这一行字段信息代表浏览器从左到又支持内容类型.。

Accept-Encoding: gzip, deflate

Accept_Encode表示的浏览器压缩编码有哪些

gzip是常见的压缩编码的一种

deflate是一种无损数据压缩算法

这一行字段信息代表浏览器能支持的压缩编码类型

Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

Accept-Language表示的浏览器能够支持的语言类型

zh-CN表示的是简体中文

zh表示的是中文

en-US表示英文(美国)

这一行字段信息代表浏览器能支持的语言类型

User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0

User-Agent表示的用户代理,服务器可以通过该字段识别浏览器的类型、以及电脑的型号、操作系统、浏览器支持的排版引擎

Connection: close

connection表示的是浏览器与服务器连接的类型

keep-alive表示的是持久性连接

close表示的是单方面关闭连接,让连接断开。

1.实例

import urllib.request
import urllib.error
import http.cookiejar
url = "http://news.163.com/world/"
heads = {"Host":"news.163.com", "User-Agent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0",
"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language":"zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
"Accept-Encoding":"gzip, deflate", "Connection":"keep-alive", "Upgrade-Insecure-Requests":"1"}
cookjar = http.cookiejar.CookieJar()
head = []
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookjar))
for key, value in heads.items():
    item = (key, value)
    head.append(item)  
opener.addheaders = head  
urllib.request.install_opener(opener)  
data = urllib.request.urlopen(url).read()
handler = open("E:/Python/file/1.html", "wb")
handler.write(data)
handler.close()

 

转载于:https://my.oschina.net/quguangle/blog/1843916

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值