python通过伪装头部数据抵抗反爬虫的实例
作者:JackReach 发布时间:2022-03-11 09:56:04
标签:python,爬虫,头部
0x00 环境
系统环境:win10
编写工具:JetBrains PyCharm Community Edition 2017.1.2 x64
python 版本:python-3.6.2
抓包工具:Fiddler 4
0x01 头部数据伪装思路
通过http向服务器提交数据,以下是通过Fiddler 抓取python没有伪装的报文头信息
GET /u012870721 HTTP/1.1
Accept-Encoding: identity
Host: blog.csdn.net
User-Agent: <span style="color:#ff0000;">Python-urllib/3.6</span>
Connection: close
Python-urllib/3.6
很明显啊,我们暴露了。现在要问了,该怎么!模拟浏览器,让自己伪装成浏览器,一下是浏览器访问发送的头部数据
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36
Referer: http://write.blog.csdn.net/postlist
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8
0x02代码实现
from urllib import request
html_url = "http://blog.csdn.net/u012870721";
#伪装构造头
header ={
"Connection": "keep-alive",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36",
"Accept":" text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"Accept-Encoding": "gzip,deflate",
"Accept-Language": "zh-CN,zh;q=0.8"
};
#int main()
#{
req = request.Request(url=html_url, headers=header);
resp = request.urlopen(req);
# return 0;
# }
伪装后进行发送的信息头
GET /u012870721 HTTP/1.1
Host: blog.csdn.net
Connection: close
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip,deflate
Accept-Language: zh-CN,zh;q=0.8
来源:https://blog.csdn.net/u012870721/article/details/77750454


猜你喜欢
- 目录1.代码的编写过程2.结果的可视化展示3.结论前言:前不久,我刷到这样一条短视频,“1.7亿的90后仅有约1000万对结婚,结婚率不到1
- 前言由于自己并不以Python语言为主,这里只是简单介绍一下Numpy库的使用提示:以下是本篇文章正文内容🧡Numpy库介绍numpy 库处
- 起因引发原因:门店需求新增自提门店,自提门店需要加自提点图片,在渠道店上引入了图片地址img_url 的字段,字段值定义为text not
- <?php/** * 发送文件 * * @author: legend(legendsky@hotmai
- 前言昨天把自己的VASP文件处理库进行了打包并上传到PyPI,现在可以直接通过pip和easy_install来安装VASPy啦(同时欢迎使
- python3.6.2环境安装配置图文教程,具体如下一、需要下载的软件》python3.6.2.exe (也可以选择更新的版本) ----
- Git的使用基本教程git安装官网 msysgit.github.io(百度搜索git下载地址也行)下载git安装(路径选择你的路径或者默认
- 我就废话不多说了,大家还是直接看代码吧!# -*- coding: utf-8 -*-"""Created o
- 在运行复杂的Python程序时,执行时间会很长,这时也许想提高程序的执行效率。但该怎么做呢?首先,要有个工具能够检测代码中的瓶颈,例如,找到
- if判断判断的定义 如果条件满足,就做一件事;条件不满足,就做另一件事; 判断语句又被称为分支语句,有判断,才有分支;i
- 在过去的十年中,MySQL已经成为广受欢迎的数据库,而WordPress博客使用的是MySQL数据库,虽然使用插件可以解决一些问题,但是实现
- """已知列表li = [{"key": 5}, {"key": 9}
- 一般在卸载完数据库时,大家都希望能够将注册表信息完全删干净,下面就将教您彻底删除SQL Server注册表的方法,供您参考。在卸载SQL S
- pandas可以非常方便的写数据到excel,那么如何写多个dataframe到不同的sheet呢?使用pandas.ExcelWriter
- 一、下载镜像docker Hub官网URL:https://hub.docker.com/_/mysql/下载最新版本:docker pul
- 本文python代码实现的是最小二乘法线性拟合,并且包含自己造的轮子与别人造的轮子的结果比较。问题:对直线附近的带有噪声的数据进行线性拟合,
- 如果当前绝对定位的元素需要透明(没啥内容、且不设置背景),背景元素有内容透出来的时候,IE6/IE7响应的不是期望的当前元素,而是背景元素。
- 本文介绍了python selenium UI自动化解决验证码的4种方法,分享给大家,具体如下:测试环境windows7+firefox50
- 引言当我们想到“pythonic”时,理解,如列表和字典理解是 Python 的一个特性。这是我们执
- OpenCV:图片缩放和图像金字塔对图像进行缩放的最简单方法当然是调用resize函数啦!resize函数可以将源图像精确地转化为指定尺寸的