当前位置: 首页 > 面试题库 >

如何在Selenium中更改Google Chrome用户代理?

戚锦
2023-03-14
问题内容

我正在尝试找出一种方法,每当我在此特定脚本中通过Selenium(在Python中)打开Chrome时,Chrome页面都会自动打开,并选择另一个用户代理-
在这种情况下为Microsoft Edge Mobile(但我会从桌面访问它)。

因此,在进行了一些研究之后,我能够整理以下代码,我认为这些代码将在Chrome中执行用户代理开关,然后打开一个新的Bing.com页面:

from selenium import webdriver 
from selenium.webdriver.chrome.options

import Options opts = Options()
opts.add_argument("user-agent=Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 640 XL LTE) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.10166")
driver = webdriver.Chrome(chrome_options=opts)
driver = webdriver.Chrome("D:\_")
driver.get("https://www.bing.com/")

但是,该代码似乎无效,并在打开指定网页之前停止。我相当确定代码的前半部分已关闭,但我不确定如何执行。任何帮助都将不胜感激。


问题答案:

使用随机 用户代理的
一种简单方法是使用Python的fake_useragent模块,如下所示:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from fake_useragent import UserAgent

options = Options()
ua = UserAgent()
userAgent = ua.random
print(userAgent)
options.add_argument(f'user-agent={userAgent}')
driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\WebDrivers\ChromeDriver\chromedriver_win32\chromedriver.exe')
driver.get("https://www.google.co.in")
driver.quit()

连续执行3次的结果如下:

  1. 第一次执行:

    Mozilla/5.0 (Windows NT 4.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36
    
  2. 第二次执行:

    Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.517 Safari/537.36
    
  3. 第三次执行:

    Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1309.0 Safari/537.17
    


 类似资料:
  • 我正试图更改我的用户代理,并将更改后的用户代理打印到终端,以检查它是否已成功更改,但我没有运气。 def拦截器(请求): 我也不能从selenium wire打印用户代理,我只能使用此方法。 打印(代理) 请有人帮忙,不胜感激:)

  • 我在硒写测试,想改变代理到自动检测在火狐,默认是从系统设置代理。怎么做呢? 我的代码如下: 上面的代码来自如何使用SeleniumWebDriver和Java为firefox设置代理? 但在行驱动=new FirefoxDriver(配置文件)我得到:构造函数FirefoxDriver(FirefoxProfile)是未定义的

  • 我是一个基本的Python程序员。我想改变谷歌铬的设置,特别是代理和局域网设置自动与程序。我试着看网络浏览器库,但我认为这还不够。我看了硒库,但是我不知道从哪里开始在库中查找我的需求,有人能提供一个资源或方法来自动化我的任务吗?我看了另一个描述使用c#的过程的问题。但那不是我的问题。我想要我的确切目的所需的留档。 http://seleniumhq.github.io/selenium/docs/

  • 我想把一个网站的css从python改成selenium。 到目前为止,我所做的是获得CSS的价值。 我想更改此css的值。 运行下面的Python代码的结果:0px 0px 0px 270px 从0px 0px 0px 270px如何将其更改为0px 0px 0px 0px? 我尝试过这些事情,但最终并不是所有的都成功。 驾驶员执行_脚本(“参数[0].style.margin='0px 0px