Python3 伪装浏览器的方法示例


Posted in Python onNovember 23, 2017

一、伪装浏览器

对于一些需要登录的网站,如果不是从浏览器发出的请求,则得不到响应。所以,我们需要将爬虫程序发出的请求伪装成浏览器正规军。

具体实现:自定义网页请求报头。

二、使用Fiddler查看请求和响应报头

打开工具Fiddler,然后再浏览器访问“https://www.douban.com/”,在Fiddler左侧访问记录中,找到“200 HTTPS www.douban.com”这一条,点击查看其对应的请求和响应报头具体内容:

Python3 伪装浏览器的方法示例

三、访问豆瓣

我们自定义请求报头与上图Request Headers相同内容:

''''' 
伪装浏览器 
 
对于一些需要登录的网站,如果不是从浏览器发出的请求,则得不到响应。 
所以,我们需要将爬虫程序发出的请求伪装成浏览器正规军。 
具体实现:自定义网页请求报头。 
''' 
 
#实例二:依然爬取豆瓣,采用伪装浏览器的方式 
 
import urllib.request 
 
#定义保存函数 
def saveFile(data): 
 path = "E:\\projects\\Spider\\02_douban.out" 
 f = open(path,'wb') 
 f.write(data) 
 f.close() 
 
#网址 
url = "https://www.douban.com/" 
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ' 
      'Chrome/51.0.2704.63 Safari/537.36'} 
req = urllib.request.Request(url=url,headers=headers) 
 
res = urllib.request.urlopen(req) 
 
data = res.read() 
 
#也可以把爬取的内容保存到文件中 
saveFile(data) 
 
data = data.decode('utf-8') 
#打印抓取的内容 
print(data) 
 
 
#打印爬取网页的各类信息 
print(type(res)) 
print(res.geturl()) 
print(res.info()) 
print(res.getcode())

四、输出的结果结果(截取部分)

Python3 伪装浏览器的方法示例

结果文件内容

Python3 伪装浏览器的方法示例

GitHub代码链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 开发Activex组件方法
Nov 08 Python
使用wxPython获取系统剪贴板中的数据的教程
May 06 Python
在Python中用keys()方法返回字典键的教程
May 21 Python
python 打印出所有的对象/模块的属性(实例代码)
Sep 11 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
Python使用openpyxl读写excel文件的方法
Jun 30 Python
Python实例方法、类方法、静态方法的区别与作用详解
Mar 25 Python
Django框架自定义session处理操作示例
May 27 Python
Python使用tkinter模块实现推箱子游戏
Oct 08 Python
Python面向对象魔法方法和单例模块代码实例
Mar 25 Python
Python 多进程、多线程效率对比
Nov 19 Python
使用Pytorch实现two-head(多输出)模型的操作
May 28 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 #Python
python数字图像处理之高级滤波代码详解
Nov 23 #Python
Python3网络爬虫之使用User Agent和代理IP隐藏身份
Nov 23 #Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
Nov 23 #Python
Python实现的基数排序算法原理与用法实例分析
Nov 23 #Python
Scrapy抓取京东商品、豆瓣电影及代码分享
Nov 23 #Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 #Python
You might like
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
PHP PDOStatement::fetchObject讲解
2019/02/01 PHP
实例讲解PHP表单
2020/06/10 PHP
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象
2013/01/11 Javascript
html中使用javascript调用本地程序(exe、doc等)实现代码
2013/04/26 Javascript
jquery如何实现锚点链接之间的平滑滚动
2013/12/02 Javascript
JavaScript组件开发完整示例
2015/12/15 Javascript
使用HTML5+Boostrap打造简单的音乐播放器
2016/08/05 Javascript
JavaScript表单验证完美代码
2017/03/02 Javascript
Angular2入门--架构总览
2017/03/29 Javascript
JS传参及动态修改页面布局
2017/04/13 Javascript
vue.js中v-on:textInput无法执行事件问题的解决过程
2017/07/12 Javascript
详解如何使用webpack打包多页jquery项目
2019/02/01 jQuery
使用python分析git log日志示例
2014/02/27 Python
Python设计模式之观察者模式实例
2014/04/26 Python
使用Protocol Buffers的C语言拓展提速Python程序的示例
2015/04/16 Python
详解Python多线程
2016/11/14 Python
Python Socket实现简单TCP Server/client功能示例
2017/08/05 Python
python 数据提取及拆分的实现代码
2019/08/26 Python
Django实现网页分页功能
2019/10/31 Python
python清空命令行方式
2020/01/13 Python
Python结合Window计划任务监测邮件的示例代码
2020/08/05 Python
使用anaconda安装pytorch的实现步骤
2020/09/03 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
python代数式括号有效性检验示例代码
2020/10/04 Python
解决PyCharm无法使用lxml库的问题(图解)
2020/12/22 Python
CSS的pointer-events属性详细介绍(作用和注意事项)
2014/04/23 HTML / CSS
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
英国厨房与餐具用品为主的设计品牌:Joseph Joseph
2018/04/26 全球购物
Luxplus荷兰:以会员价购买美容产品等,独家优惠
2019/08/30 全球购物
优秀毕业生推荐信范文
2014/03/07 职场文书
人事局接收函
2015/01/31 职场文书
工作态度恶劣检讨书
2015/05/06 职场文书
消防安全培训工作总结
2015/10/23 职场文书