Python爬虫之UserAgent的使用实例


Posted in Python onFebruary 21, 2019

问题: 在Python爬虫的过程中经常要模拟UserAgent, 因此自动生成UserAgent十分有用, 最近看到一个Python库(fake-useragent),可以随机生成各种UserAgent, 在这里记录一下, 留给自己爬虫使用。

安装 pip install fake-useragent

使用案例

基本使用

from fake_useragent import UserAgent
ua = UserAgent()
ua.ie
# Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US);
ua.msie
# Mozilla/5.0 (compatible; MSIE 10.0; Macintosh; Intel Mac OS X 10_7_3; Trident/6.0)'
ua['Internet Explorer']
# Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; GTB7.4; InfoPath.2; SV1; .NET CLR 3.3.69573; WOW64; en-US)
ua.opera
# Opera/9.80 (X11; Linux i686; U; ru) Presto/2.8.131 Version/11.11
ua.chrome
# Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.2 (KHTML, like Gecko) Chrome/22.0.1216.0 Safari/537.2'
ua.google
# Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1290.1 Safari/537.13
ua['google chrome']
# Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11
ua.firefox
# Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1
ua.ff
# Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1
ua.safari
# Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5355d Safari/8536.25
# and the best one, random via real world browser usage statistic
ua.random

注意:

fake-useragent 将收集到的数据缓存到temp文件夹, 例如 /tmp, 更新数据:

from fake_useragent import UserAgent
ua = UserAgent()
ua.update()

有时候会因为网络或者其他问题,出现异常(fake_useragent.errors.FakeUserAgentError: Maximum amount of retries reached), 可以禁用服务器缓存(从这里踩了一个坑, 没仔细看文档的锅):

from fake_useragent import UserAgent
ua = UserAgent(use_cache_server=False)

可以自己添加本地数据文件(v0.1.4+)

import fake_useragent
# I am STRONGLY!!! recommend to use version suffix
location = '/home/user/fake_useragent%s.json' % fake_useragent.VERSION
ua = fake_useragent.UserAgent(path=location)
ua.random

其他功能用到的也不是很多,详细见文档吧。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python基础教程之自定义函数介绍
Aug 29 Python
Python格式化css文件的方法
Mar 10 Python
在Python的Django框架中用流响应生成CSV文件的教程
May 02 Python
Python使用pip安装报错:is not a supported wheel on this platform的解决方法
Jan 23 Python
python数字图像处理之高级形态学处理
Apr 27 Python
Python的互斥锁与信号量详解
Sep 12 Python
python实现将json多行数据传入到mysql中使用
Dec 31 Python
Python 爬虫的原理
Jul 30 Python
如何快速理解python的垃圾回收机制
Sep 01 Python
python des,aes,rsa加解密的实现
Jan 16 Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 Python
Python 统计序列中元素的出现频度
Apr 26 Python
利用python实现在微信群刷屏的方法
Feb 21 #Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 #Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
Feb 21 #Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 #Python
用python实现刷点击率的示例代码
Feb 21 #Python
Python快速转换numpy数组中Nan和Inf的方法实例说明
Feb 21 #Python
python根据文章标题内容自动生成摘要的实例
Feb 21 #Python
You might like
PHP MYSQL乱码问题,使用SET NAMES utf8校正
2009/11/30 PHP
php处理json时中文问题的解决方法
2011/04/12 PHP
解析php开发中的中文编码问题
2013/08/08 PHP
php不用正则验证真假身份证
2013/11/06 PHP
PHP实现PDO的mysql数据库操作类
2014/12/12 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
PHP模糊查询技术实例分析【附源码下载】
2019/03/07 PHP
javascript 程序库的比较(一)之DOM功能
2010/04/07 Javascript
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
JQuery设置获取下拉菜单某个选项的值(比较全)
2014/08/05 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
2014/08/08 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
利用JavaScript判断浏览器类型及版本
2016/08/23 Javascript
使用JS正则表达式 替换括号,尖括号等
2016/11/29 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
《javascript少儿编程》location术语总结
2018/05/27 Javascript
vue+vuex+json-seiver实现数据展示+分页功能
2019/04/11 Javascript
vue history 模式打包部署在域名的二级目录的配置指南
2019/07/02 Javascript
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
利用python批量给云主机配置安全组的方法教程
2017/06/21 Python
python实现定时发送qq消息
2019/01/18 Python
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
2019/06/03 HTML / CSS
naturalizer加拿大官网:美国娜然女鞋
2017/04/04 全球购物
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
乌克兰香水和化妆品网站:Notino.ua
2018/03/26 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
村优秀党员事迹材料
2014/01/15 职场文书
公司合并协议书范本
2014/09/30 职场文书
假释思想汇报范文
2014/10/11 职场文书
旷课检讨书500字
2014/10/14 职场文书
质量保证书格式模板
2015/02/27 职场文书
总经理司机岗位职责
2015/04/10 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
重阳节简报
2015/07/20 职场文书
2016年“我们的节日·清明节”活动总结
2016/04/01 职场文书
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL