繁体   English   中英

在Selenium中通过webdriver传递用户代理

[英]Pass the user-agent through webdriver in Selenium

我正在使用Python中的Selenium开发网站抓取项目。 当我通过浏览器打开主页时,它会正常打开。

但是,当我尝试通过Selenium中的webdriver()打开网页时,它会打开一个完全不同的页面。

我认为,它能够检测user-agent (不确定它叫什么),并能够检查浏览器的属性或其他东西。

是否可以通过webdriver()传递属性,以便加载正确的主页。

谢谢

通过更改浏览器的配置文件来更改python版webdriver中的用户代理。 我只通过传递一个profile参数为webdriver.Firefox()做了这个。 您需要执行以下操作:

from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_preference("general.useragent.override","your_user_agent_string")
driver=webdriver.Firefox(profile)

每次要更改用户代理时,都需要重新启动Web浏览器(即再次调用driver=webdriver.Firefox(profile)

如果您不确定您的用户代理字符串是什么,请在显示该页面的浏览器上搜索“我的用户代理是什么”,然后复制并粘贴该页面。

希望对它进行分类。

假设用户代理是问题,在Java中您可以像这样修改它:

FirefoxProfile profile = new FirefoxProfile();
profile.addAdditionalPreference("general.useragent.override", "some UA string");
WebDriver driver = new FirefoxDriver(profile);

请参阅此处的文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM