Selenium

Firefox修改UserAgent伪装成手机浏览器

2018-12-20  本文已影响0人  渐悟懂劲

1、 什么是User-Agent

User-Agetn是Http协议中的一部分,简单的说是浏览器向所访问网站提供你所使用的浏览器类型、操作系统、浏览器内核等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验,比如用手机打开网站会显示手机版的网页。

2、 Firefox中如何设置User-Agent

在Firefox中可以下载User Agent Switcher扩展来设置和切换UA,通过这个浏览器插件,可以很方便的切换为各类桌面操作系统的浏览器和移动端的浏览器,还可以模拟谷歌搜索爬虫。

如果你想知道自己的浏览器或者手机浏览器所使用UA是什么,可以访问如下地址查看:

http://useragentstring.com/

3、设置User-Agent可以干什么

不同的人有不同的用处,对于前端工程师可以模拟各类浏览器,查看不同浏览器的显示效果。

对于测试人员可以方便的测试各种浏览器是否能兼容。

有一些网站不喜欢被爬虫程序访问,所以会检测连接对象,如果是爬虫程序,也就是非人点击访问,它就会不让你继续访问,所以为了要让程序可以正常运行,需要隐藏自己的爬虫程序的身份。此时,我们就可以通过设置User Agent的来达到隐藏身份的目的。

User Agent存放于Headers中,服务器就是通过查看Headers中的User Agent来判断是谁在访问。在Python中,如果不设置User Agent,程序将使用默认的参数,那么这个User Agent就会有Python的字样,如果服务器检查User Agent,那么没有设置User Agent的Python程序将无法正常访问网站。

4、常用的浏览器请求头User-Agent

4.1 Windows/Firefox

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0

4.2 Windows/IE

Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko

4.3 Windows/EDGE

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134

4.4 Windows/Chrome

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36

4.5 Linux/Firefox

Mozilla/5.0 (X11; Linux x86_64; rv:63.0) Gecko/20100101 Firefox/63.0

4.6 Android/Firefox

Mozilla/5.0 (Android 9.0; Mobile; rv:63.0) Gecko/63.0 Firefox/63.0

4.7 Android/Chrome

Mozilla/5.0 (Linux; Android 9.0; Z832 Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Mobile Safari/537.36

4.8 iPhone/Safari

Mozilla/5.0 (iPhone; CPU OS 10_14 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.1 Mobile/14E304 Safari/605.1.15

4.9 Google/bot

Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)

4.10 百度蜘蛛移动端

Mozilla/5.0 (Linux;u;Android 4.2.2;zh-cn;) AppleWebKit/534.46 (KHTML,like Gecko) Version/5.1 Mobile Safari/10600.6.3 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)

4.11 百度蜘蛛PC端

Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html

5、selenium设置chrome请求头

这里我写了一个例子,用来说明如何通过修改User Agent,伪装成手机来访问百度移动端的页面。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""User Agent example."""

from selenium import webdriver

# 进入浏览器设置
options = webdriver.ChromeOptions()

# 设置中文
options.add_argument('lang=zh_CN.UTF-8')

# 修改User Agent
options.add_argument('user-agent="Mozilla/5.0 (Android 9.0; Mobile; rv:63.0) Gecko/63.0 Firefox/63.0"')


browser = webdriver.Chrome(chrome_options=options)

browser.get("http://www.baidu.com")

browser.maximize_window()

browser.quit()

测试通过。

6、用第三方库来设置User Agent

在Python爬虫的过程中经常要模拟UserAgent, 因此自动生成UserAgent十分有用, fake-useragent库可以随机生成各种UserAgent。

# 安装
pip install fake-useragent

文档地址:

https://pypi.org/project/fake-useragent/

上一篇 下一篇

猜你喜欢

热点阅读