python通过伪装头部数据抵抗反爬虫的实例


Posted in Python onMay 07, 2018

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

以上这篇python通过伪装头部数据抵抗反爬虫的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python查找目录下指定扩展名的文件实例
Apr 01 Python
python装饰器深入学习
Apr 06 Python
python将txt文件读入为np.array的方法
Oct 30 Python
python Elasticsearch索引建立和数据的上传详解
Aug 04 Python
python Event事件、进程池与线程池、协程解析
Oct 25 Python
Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】
Oct 30 Python
使用Python制作新型冠状病毒实时疫情图
Jan 28 Python
python实现拼接图片
Mar 23 Python
Django 拼接两个queryset 或是两个不可以相加的对象实例
Mar 28 Python
基于Python把网站域名解析成ip地址
May 25 Python
Keras实现DenseNet结构操作
Jul 06 Python
C++和python实现阿姆斯特朗数字查找实例代码
Dec 07 Python
Django Web开发中django-debug-toolbar的配置以及使用
May 06 #Python
python安装模块如何通过setup.py安装(超简单)
May 05 #Python
python实现守护进程、守护线程、守护非守护并行
May 05 #Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
May 05 #Python
Python3中的json模块使用详解
May 05 #Python
Python 编码规范(Google Python Style Guide)
May 05 #Python
python 编码规范整理
May 05 #Python
You might like
怎样才能成为PHP高手?学会“懒惰”的编程
2006/12/05 PHP
修改php.ini不生效问题解决方法(上传大于8M的文件)
2013/06/14 PHP
php获取表单中多个同名input元素的值
2014/03/20 PHP
PHP命名空间(Namespace)简明教程
2014/06/11 PHP
TP5(thinkPHP框架)实现后台清除缓存功能示例
2019/05/29 PHP
Yii 实现数据加密和解密
2021/03/09 PHP
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
js动态在form上插入enctype=multipart/form-data的问题
2012/05/24 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
浅谈bootstrap源码分析之tab(选项卡)
2016/06/06 Javascript
JavaScript 闭包机制详解及实例代码
2016/10/10 Javascript
js实现截图保存图片功能的代码示例
2017/02/16 Javascript
ZeroClipboard.js使用一个flash复制多个文本框
2017/06/19 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
jquery操作select常见方法大全【7种情况】
2019/05/28 jQuery
[55:18]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
详解Python开发中如何使用Hook技巧
2017/11/01 Python
python提取xml里面的链接源码详解
2019/10/15 Python
Python run()函数和start()函数的比较和差别介绍
2020/05/03 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
HTML5公共页面提取作为公用代码的方法
2020/06/30 HTML / CSS
如果让你测试一台高速激光打印机,你都会进行哪些测试
2012/12/04 面试题
管道维修工岗位职责
2013/12/27 职场文书
《逃家小兔》教学反思
2014/02/23 职场文书
2014年党员公开承诺书范文
2014/03/28 职场文书
毕业生求职信
2014/06/10 职场文书
助人为乐道德模范事迹材料
2014/08/16 职场文书
2016年安全月活动总结
2016/04/06 职场文书
Python OpenCV 彩色与灰度图像的转换实现
2021/06/05 Python
Python爬取某拍短视频
2021/06/11 Python
Python常用配置文件ini、json、yaml读写总结
2021/07/09 Python
Python中可变和不可变对象的深入讲解
2021/08/02 Python
nginx负载功能+nfs服务器功能解析
2022/02/28 Servers