基本上我正在尝试Selenium webdriver(使用FireFox),现在我正在尝试注册Google帐户。 然而,奇怪的是,每当我运行Selenium并让它使用(我假设空?)Selenium FireFox配置文件谷歌似乎检测到它并阻止我(要求电话翻页)。 当我加载selenium配置文件并手动注册时,情况就是如此。
当我手动注册(并且不使用selenium配置文件)时,我可以注册。
Selenium FireFox配置文件是否具有哪些特殊功能,使服务器能够检测到它?
编辑:我正在尝试使用我的默认FF配置文件启动selenium(但是它一直在空配置文件中启动) - 这是代码:
OpenQA.Selenium.Proxy proxySetting = new OpenQA.Selenium.Proxy();
proxySetting.HttpProxy = proxy;
proxySetting.FtpProxy = proxy;
proxySetting.SslProxy = proxy;
FirefoxProfile profile = new FirefoxProfile("default");
profile.SetProxyPreferences(proxySetting);
profile.SetPreference("browser.privatebrowsing.autostart", true);
_driver = new FirefoxDriver(profile);
编辑: 我设法打开默认的firefox配置文件,但现在它不使用我的代理设置。如何使用普通配置文件并仍然自定义配置文件代理?
答案 0 :(得分:1)
This post谈到将一个HtmlDriver标记添加到FirefoxDriver中的HTML中,这将是一个死的赠品
答案 1 :(得分:0)
谷歌是开源的强力支持者,甚至是Selenium本身的支持者,但我不认为谷歌会特别宽恕Selenium脚本创建一堆可能永远不会被使用的垃圾邮件帐户,只是占用空间。
话虽如此,我相信它可能可能。
Google能够知道您使用Selenium的唯一方法是基于请求标头。 User-Agent
可能与Selenium或其他标题有关。
我的解决方案是使用类似Fiddler的内容来收听Firefox发送的请求,然后编辑您的Selenium脚本以进行说明,并更改这些请求,以便Google不知道您使用的是Selenium。
这很可能违反了他们的使用条款,因此请谨慎行事,并将此答案仅用于教育目的。
答案 2 :(得分:-1)
如果您使用firefox配置文件目录的完整路径,是否有机会? (例如C:\ Users \ ??? \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ your_profile.default)