【问题标题】:rotating user agent using Python3 and Selenium 4 chrome使用 Python3 和 Selenium 4 chrome 旋转用户代理
【发布时间】:2020-04-24 17:30:25
【问题描述】:

我想知道是否可以在使用 selenium 4 和 Python 的用户代理之间进行轮换。我的脚本创建了多个 chrome 窗口,但它们都获得了相同的假用户代理。任何人都知道在这个日期您是否可以在它创建的每个窗口之间轮换 selenium fake 用户代理? 先感谢您!

更新:这是我更新的代码,即使使用 cdp(感谢更新的答案)我仍然为每个窗口获得相同的 UA。我的代码中可能有什么问题阻止了我?

【问题讨论】:

  • 抱歉尝试添加图片但效果不佳

标签: python selenium user-agent


【解决方案1】:

你可以使用类似的东西:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from fake_useragent import UserAgent # pip3 install fake_useragent
from time import sleep

options = Options()
options.add_argument(f'user-agent={UserAgent().random}')
driver = webdriver.Chrome(chrome_options=options)
driver.get("http://www.whatsmyua.info/")

sleep(5)

driver.execute_cdp_cmd("Network.enable", {})
driver.execute_cdp_cmd("Network.setExtraHTTPHeaders", {"headers": {"User-Agent": f"{UserAgent().random}"}})
driver.get("http://www.whatsmyua.info/")

【讨论】:

  • 嗨,这就是我所做的,但是创建的每个实例都有相同的 UA :/
  • 是的,当我停止它并再次运行它时,我也是,但是当我在我的脚本中放置 10 个实例时,将连续生成 10 个实例,它们的 UA 是相同的
  • 我想做的是为一个 nwindow 获取一个随机的 ua,然后为 n+1 窗口获取另一个与 n 不同的 n+1
  • 即使使用 cdp ?因为显然它应该可以在 Selenium 4 下正如有人在您发送的答案中所说的那样
  • execute_cdp_cmd 可以实现!请检查更新的答案。
猜你喜欢
  • 1970-01-01
  • 2019-08-08
  • 2021-05-04
  • 1970-01-01
  • 1970-01-01
  • 2018-07-07
  • 2021-02-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多