如何在Python + Selenium中创建随机用户代理?

时间:2018-01-26 02:22:59

标签: python python-3.x google-chrome selenium user-agent

如何在Chrome中创建随机user_agent?我正在使用假冒的。 Library here。打印输出正常工作,但似乎没有加载到Chrome中。

我试过了:

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


options = Options()
options.add_argument("window-size=1400,600")
from fake_useragent import UserAgent
ua = UserAgent()
a = ua.random
user_agent = ua.random
print(user_agent)
options.add_argument(f'user-agent={user_agent}')
driver = webdriver.Chrome()
driver.get('https://whoer.net/')

每次都不打印随机输出。

印刷输出:

  

Mozilla / 5.0(Macintosh; Intel Mac OS X 10_10_1)AppleWebKit / 537.36
  (KHTML,像Gecko一样)Chrome / 41.0.2227.1 Safari / 537.36

根据whoer.net输出user_agent:

  

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

2 个答案:

答案 0 :(得分:3)

您尚未使用“无法运作

”的选项
from selenium import webdriver
from selenium.webdriver.chrome.options import Options


options = Options()
options.add_argument("window-size=1400,600")
from fake_useragent import UserAgent
ua = UserAgent()
a = ua.random
user_agent = ua.random
print(user_agent)
options.add_argument(f'user-agent={user_agent}')
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://whoer.net/')
driver.quit()

之后它可以工作,请参阅控制台和浏览器输出

Console output

Browser output

答案 1 :(得分:0)

伪造用户代理的一种简单方法是使用FirefoxProfile(),如下所示:

from selenium import webdriver
from fake_useragent import UserAgent

useragent = UserAgent()
profile = webdriver.FirefoxProfile()
profile.set_preference("general.useragent.override", useragent.random)
driver = webdriver.Firefox(firefox_profile=profile, executable_path="C:\\Utility\\BrowserDrivers\\geckodriver.exe")
driver.get("http://www.whatsmyua.info/")

连续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