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的Django框架中实现Hacker News的一些功能
Apr 17 Python
python万年历实现代码 含运行结果
May 20 Python
Python实现解析Bit Torrent种子文件内容的方法
Aug 29 Python
MAC中PyCharm设置python3解释器
Dec 15 Python
pymongo中group by的操作方法教程
Mar 22 Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 Python
基于python plotly交互式图表大全
Dec 07 Python
python生成13位或16位时间戳以及反向解析时间戳的实例
Mar 03 Python
Python实现转换图片背景颜色代码
Apr 30 Python
pyecharts调整图例与各板块的位置间距实例
May 16 Python
Selenium及python实现滚动操作多种方法
Jul 21 Python
python 绘制国旗的示例
Sep 27 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 页面跳转到另一个页面的多种方法方法总结
2009/07/07 PHP
php教程 插件机制在PHP中实现方案
2012/11/02 PHP
PHP引用(&)各种使用方法实例详解
2014/03/20 PHP
WordPress中登陆后关闭登陆页面及设置用户不可见栏目
2015/12/31 PHP
javascript实现的网页局布刷新效果
2008/12/01 Javascript
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
HTML Color Picker(js拾色器效果)
2013/08/27 Javascript
引用 js在IE与FF之间的区别详细解析
2013/11/20 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
基于JS实现仿百度百家主页的轮播图效果
2017/03/06 Javascript
关于javascript作用域的常见面试题分享
2017/06/18 Javascript
基于JavaScript实现前端数据多条件筛选功能
2020/08/19 Javascript
关于laydate.js加载laydate.css路径错误问题解决
2017/12/27 Javascript
3分钟了解vue数据劫持的原理实现
2019/05/01 Javascript
vue如何在项目中调用腾讯云的滑动验证码
2020/07/15 Javascript
js删除指定位置超链接中含有百度与360的标题
2021/01/06 Javascript
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
利用Python演示数型数据结构的教程
2015/04/03 Python
基于Python中求和函数sum的用法详解
2018/06/28 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
2019/09/06 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
Python如何使用队列方式实现多线程爬虫
2020/05/12 Python
Python爬虫如何应对Cloudflare邮箱加密
2020/06/24 Python
Python 字典一个键对应多个值的方法
2020/09/29 Python
瑞贝卡·泰勒官方网站:Rebecca Taylor
2016/09/24 全球购物
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
汽车检测与维修个人求职信
2013/09/24 职场文书
本科毕业生的求职信范文
2013/11/20 职场文书
退休感言
2014/01/28 职场文书
可可西里观后感
2015/06/08 职场文书
防溺水主题班会教案
2015/08/12 职场文书
小学英语教学随笔
2015/08/14 职场文书
2016年小学生迎国庆广播稿
2015/12/18 职场文书
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python