标签: selenium-webdriver

Firefox的Webdriver和代理服务器

有没有办法设置firefox的代理设置?我在这里找到了有关FoxyProxy的信息,但是当Selenium工作时,插件在窗口中被取消激活.

firefox proxy selenium-webdriver foxyproxy

36
推荐指数
7
解决办法
9万
查看次数

如何使用带有node.js的Selenium WebDriver最大化firefox浏览器窗口

我们如何使用带有node.js的Selenium WebDriver(Selenium 2)来最大化firefox浏览器.我正在使用wdSelenium WebDriver的包来编写测试.我曾尝试执行window.resizeTo(1366,768);全光照evalexecute但没有奏效.

我正在使用Selenium WebDriver 2.25.0

firefox selenium-webdriver

36
推荐指数
3
解决办法
11万
查看次数

如何使用selenium在点击事件上下载文件?

我正在研究python和selenium.我想使用selenium从点击事件下载文件.我写了以下代码.

from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys

browser = webdriver.Firefox()
browser.get("http://www.drugcite.com/?q=ACTIMMUNE")

browser.close()
Run Code Online (Sandbox Code Playgroud)

我想从给定网址名称为"导出数据"的链接下载这两个文件.我如何才能实现它,因为它只适用于点击事件?

python selenium selenium-webdriver

36
推荐指数
2
解决办法
6万
查看次数

Selenium webdriver:如何找到所有元素的属性?

在Python Selenium模块中,一旦我有了一个WebElement对象,我就可以获得它的任何属性的值get_attribute():

foo = elem.get_attribute('href')
Run Code Online (Sandbox Code Playgroud)

如果名为'href'不存在的属性,None则返回.

我的问题是,如何获得元素具有的所有属性的列表?似乎没有get_attributes()get_attribute_names()方法.

我正在使用Selenium模块的2.44.0版本用于Python.

python selenium selenium-webdriver

36
推荐指数
4
解决办法
4万
查看次数

是否可以通过Selenium中的部分id匹配来定位元素

我正在尝试使用生成的ID定位元素,其中ID的某些部分是已知的; 例如:

id="page_x002e_x0023_default-create-firstname"
Run Code Online (Sandbox Code Playgroud)

其中最后3个单词(_default-create-firstname)已知但前面的任何内容都可能发生变化.这可能吗?

selenium selenium-webdriver

36
推荐指数
4
解决办法
6万
查看次数

如何使用Selenium WebDriver从隐藏元素中读取文本?

我试图1000从这样的隐藏中读取示例String <div>:

<div id="hidden_div" style="visibility:hidden">1000</div>
Run Code Online (Sandbox Code Playgroud)

我知道这WebElement.getText()对Selenium 2(WebDriver)中的隐藏元素不起作用,所以我搜索了解决方案(比如这个),显然以下代码应该可以工作:

WebElement hiddenDiv = seleniumDriver.findElement(By.id("hidden_div"));
String n = hiddenDiv.getText(); // does not work (returns "" as expected)
String script = "return arguments[0].innerText";
n = (String) ((JavascriptExecutor) driver).executeScript(script, hiddenDiv);
Run Code Online (Sandbox Code Playgroud)

但它对我不起作用,变量n总是最终的结果null.我究竟做错了什么?

java hidden-field selenium-webdriver

35
推荐指数
3
解决办法
6万
查看次数

哪里可以找到Selenium WebDriver的64位版chromedriver.exe?

任何人都可以告诉我在哪里可以找到64位版本的chromedriver.exe?我用32位也试了但是它没有调用main方法.

selenium selenium-chromedriver selenium-webdriver

35
推荐指数
3
解决办法
15万
查看次数

如何使用Selenium Webdriver单击"显示通知"弹出窗口中的"允许"

我正在尝试登录Facebook.登录成功后,我会弹出一个浏览器:

显示通知

如何使用webdriver我可以单击"允许"并继续前进?

selenium selenium-webdriver

35
推荐指数
4
解决办法
5万
查看次数

使用`google-chrome --headless`时如何设置浏览器窗口大小?

尝试--headless使用Selenium webdriver命令在chrome上设置浏览器大小.

我得到这个webdriver错误:

      - Failed: unknown error: cannot get automation extension
from unknown error: page could not be found: chrome-extension://aapnijgdinlhnhlmodcfapnahmbfebeb/_generated_background_page.html
  (Session info: headless chrome=58.0.3029.81)
  (Driver info: chromedriver=2.29.461571 (8a88bbe0775e2a23afda0ceaf2ef7ee74e822cc5),platform=Linux 4.4.0-72-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 10.07 seconds
Build info: version: '3.3.1', revision: '5234b32', time: '2017-03-10 09:04:52 -0800'
System info: host: '826f6a766112', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-72-generic', java.version: '1.8.0_121'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.29.461571 …
Run Code Online (Sandbox Code Playgroud)

google-chrome headless headless-browser selenium-webdriver

35
推荐指数
2
解决办法
3万
查看次数

Selenium headless:如何使用 Selenium 绕过 Cloudflare 检测

希望专家能帮助我解开 Selenium/Cloudflare 之谜。我可以让一个网站在普通(非无头)Selenium 中加载,但无论我尝试什么,我都无法让它在无头中加载。

我已遵循 StackOverflow 帖子中的建议,例如Is there a version of Selenium WebDriver that is not detectorable? window我还查看了和对象的所有属性window.navigator,并修复了无头和非无头之间的所有差异,但不知何故仍然检测到无头。此时我非常好奇 Cloudflare 如何能够找出其中的差异。谢谢你的时间!

我尝试过的事情列表:

  • 用户代理
  • 替换cdc_为 chromedriver 中的另一个字符串
  • options.add_experimental_option("excludeSwitches", ["enable-automation"])
  • options.add_experimental_option('useAutomationExtension', False)
  • options.add_argument('--disable-blink-features=AutomationControlled')(这是让网站以非无头方式加载所必需的)
  • navigator.webdriver = undefined
  • 设置navigator.pluginsnavigator.languages、 和navigator.mimeTypes
  • window.ScreenY, window.screenTop, window.outerWidth,设置window.outerHeight为非零
  • 设置window.chromewindow.navigator.chrome
  • 将图像的宽度和高度设置为非零
  • 设置WebGL参数
  • 使固定Modernizr

重复实验

为了让网站在正常(非无头)Selenium 中加载,您必须点击_blank另一个网站的链接(以便目标网站在另一个选项卡中打开)。要复制该实验,首先创建一个包含内容的 html 文件<a href="https://poocoin.app" target="_blank">link</a>,然后在以下代码中粘贴该 html 文件的路径。

下面的版本(非无头)运行良好并加载网站,但如果您设置 …

python selenium bots webdriver selenium-webdriver

35
推荐指数
1
解决办法
6万
查看次数