一个随机切换user_agent的第三方python库:my_fake_useragent

由于my_fake_useragent 是第三方,因此须要本身进行安装。python

不用担忧,它没有任何依赖或者附加环境,只安装它本身就行。面试

方法1:windows

pycharm传统安装方式。

方法2:浏览器

pip install ...

fake_useragent 和 my_fake_useragent 实际上是一个东西。安全

使用:这里只列举两个最简单的方式去调用。服务器

# -*- coding: utf-8 -*-

import my_fake_useragent as ua

if __name__ == '__main__':
user_agent = ua.UserAgent()

# 方法1
# 随机获取一个user-agent,每次获取的都不同
for _ in range(10):
print(user_agent.random())

# 方法2
# user_agent.get_useragent_list(): 返回一个user-agent的列表
for index, each_useragent in enumerate(user_agent.get_useragent_list()):
print(index, ': ', each_useragent)

既然说到了user_agent,那就再多说一点。python爬虫

乍看user agent 时,只以为它是一串乱七八糟的字符串,其实包含的内容仍是挺多的。中文名为用户代理(区别于爬虫时使用的代理ip),简称UA,是一个特殊字符串头,使得服务器可以识别客户使用的操系统及版本、CPU类型、浏览器及版本、浏览器渲染引擎、浏览器语言等。dom

一些网站经常经过 UA 来给不一样的操做系统、不一样的浏览器发送不一样的页面。网站

UA字串的标准格式:加密

浏览器标识(操做系统标识;加密等级标识;浏览器语言)渲染引擎标识 版本信息

下面列举 UA 中包含的字符串信息

操做系统标识
FreeBSD
X11; FreeBSD (version no.) i386
X11; FreeBSD (version no.) AMD64
Linux
X11; Linux ppc
X11; Linux ppc64
X11; Linux i686
X11; Linux x86_64
Mac
Macintosh; PPC Mac OS X
Macintosh; Intel Mac OS X
Solaris
X11; SunOS i86pc
X11; SunOS sun4u
Windows:
Windows NT 10.0 对应操做系统windows 10
windows NT 6.2 对应操做系统 windows 8
Windows NT 6.1 对应操做系统 windows 7
Windows NT 6.0 对应操做系统 windows vista
Windows NT 5.2 对应操做系统 windows 2003
Windows NT 5.1 对应操做系统 windows xp
Windows NT 5.0 对应操做系统 windows 2000
Windows ME
Windows 98
加密等级标识 N: 表示无安全加密 I: 表示弱安全加密 U: 表示强安全加密
浏览器语言 在首选项 > 常规 > 语言中指定的语言
渲染引擎 浏览器 使用 Presto 渲染引擎,格式为: Presto/版本号
版本信息 显示 浏览器 真实版本信息,格式为: Version/版本号

用这些信息去刚才的python代码输出中去对照,基本都能找到对应的信息。说这些,实际上是python爬虫面试过程当中可能会被问到的一个点,虽然是个冷门的知识点,不过了解一下也好。

相关文章
相关标签/搜索