问题标签 [rselenium]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 如果循环失败则运行源代码 (RSelenium)
我写了一个循环来检查一堆链接并截取屏幕截图。我经常需要成千上万的做这些。我创建的循环适用于大约 500 个链接,然后我的浏览器关闭,我收到以下错误:
有没有办法防止这种情况?
如果没有,如果发生这种情况,我怎样才能让 R 运行源代码 OpenBrowser.R?
这是脚本:
r - 使用 RSelenium 设置只读字段的值
我正在使用 R 和 RSelenium 从网站获取一些数据,为此我必须先填写表格。我必须在表单中定义的元素之一是日期。
包含日期的框具有以下 html 代码:
我想将该日期设置为 2016 年 1 月 1 日或 2016 年 1 月 1 日,以使用所需的格式。
到达元素后
我已经尝试过这两种方法,但都没有奏效(因为我认为该项目是“只读的”):
和
正如这里所建议的,我试过了
我的想法不多了,任何提示都非常感谢!
编辑添加我找到(并发布)了一个答案。不过,我想知道是否有人知道更好的方法(httr
例如,使用 )。
r - RSelenium 无法访问 DOM
我得到错误
我研究了如果 DOM 通过异步过程更改会发生这种情况。但是,我测试了 Selenium 运行 chrome.exe 可见并且 DOM 没有改变,加载页面后元素仍然存在。
会不会有其他原因?
r - 使用 RSelenium 从网页表中检索数据
我正在尝试使用 RSelenium 从这个国家河流流量档案(英国)网站: http : //nrfa.ceh.ac.uk/data/station/info/69032 中抓取年度最大流量数据。我找不到协商下拉菜单的方法。目前我可以使用以下方法半自动化该过程:
这有点小技巧,我不得不点击页面上的几个按钮,而不是让 RSelenium 来做。关于 RSelenium 如何从下拉菜单中选择“峰值流量数据”选项卡和“最大年度 (AMAX) 数据”选项有什么建议吗?
r - 硒| 获取网页的文本
有没有办法从 RSelenium 中的 remoteDriver 获取纯文本?Somethink like: remDr$getPlainText()
as 等价于remDr$getPageSource()
.
解决方法:
我设法将 phantomJS 的纯文本保存到文件中,如下所示:
但后来我必须在后记中阅读文件......
我的解决方法类似于https://cran.r-project.org/web/packages/RSelenium/vignettes/RSelenium-headless.html#id3b
javascript - 无法在 r 中使用 phantomjs 抓取多个页面
我正在尝试使用由 RSelenium 控制的 phantomjs从https://www.washoecounty.us/assessor/cama/?command=assessment_data&parid=07101001中的 javascript 生成多个宗地的历史财产价值的县评估员数据。url 中的“paraid”是 9 位数的包裹号码。我有一个数据框,其中包含我感兴趣的包裹号码列表(总共几百个),但一直试图使代码在其中的一小部分上工作:
我需要为每个包裹在页面上生成的表格中抓取数据并保留它。我选择将页面写入文件“output.htm”,然后解析该文件。我的代码如下:
这对于循环的一两次迭代非常有效,但它突然停止保存由 javascript 生成的数据并产生错误:
这是由于解析器没有在输出文件中找到表,因为它没有被保留。我不确定我选择的实现是否存在问题,或者是否存在导致问题的特定站点的某些特质。我不熟悉 JavaScript,所以使用的代码片段取自我找到的示例。感谢您提供任何帮助。
下面的答案完美无缺。我还将 Sys.sleep(5) 移到 $navigate 之后,以允许页面有时间加载 javascript。循环现在正在执行完成。
selenium - 使用 Rselenium 下载本地文件夹中的 word 文档
我正在使用 R selenium 浏览网站并最终单击打开对话框窗口的按钮以下载文件。但是,我希望文件自动保存在不同的本地文件夹中。
我的问题类似于这个问题。
而不是使用remDr <- remoteDriver(browserName = "firefox")
我尝试过
remDr <- remoteDriver(extraCapabilities = makeFirefoxProfile(list(
"browser.helperApps.neverAsk.saveToDisk"="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
))
,但这给出了一些本地文件夹不存在的错误。
请注意,我没有 Selenium 的先验知识,并且对编程很陌生。
欢迎大家帮忙!
编辑:因为它涉及 .docx 文件,所以正确的 MIME 类型似乎是:application/vnd.openxmlformats-officedocument.wordprocessingml.document
. 所以我尝试了以下方法:
))
但这给出了以下错误:
r - 在 RSelenium 中指定下载文件夹
我正在使用RSelenium
导航到包含下载文件的按钮的网页。我使用 RSelenium 单击下载文件的此按钮。但是,这些文件默认下载在我的文件夹“下载”中,而我想将文件下载到我的工作目录中。我尝试如下指定一个 chrome 配置文件,但这似乎没有完成这项工作:
该文件仍下载在“下载”文件夹中,而不是我的工作目录中。如何解决?
r - R 中用于 RSelenium 的短 xPath
我在此页面findElement()
上使用from和 xPath 时遇到问题,其中元素的 xPath 表达式很长,即元素嵌套很深(我使用 firefox 作为远程驱动程序)。如果我使用通过检查元素(例如在 Google Chrome 中)获得的简短 xPath 表达式,则可以在页面上正常工作。但是,在 R 中(据我所知),我只能使用例如from package检索长 xPath 表达式。有没有办法在 R 中获得一个简短的 xPath 表达式来解决这个问题?RSelenium
findElement()
xml_path()
xml2
remDr$findElement(using='xpath', ShortxPath)
工作正常,但remDr$findElement(using='xpath', LongxPath)
我收到以下错误消息:
任何帮助深表感谢!