我想在RSelenium
和Xpath
的页面中找到PDF文件的所有链接。
请考虑
require(RSelenium)
RSelenium::checkForServer()
RSelenium::startServer()
remDr <- remoteDriver()
remDr$open()
remDr$navigate("https://cran.r-project.org/manuals.html")
在页面中有多个指向PDF文件的链接,例如
<a href="doc/manuals/r-release/R-intro.pdf">PDF</a>
但是我第一次尝试
remDr$findElement(using = "xpath", "//a[contains(@href,'.pdf')/@href")
产生以下错误
Error: Summary: InvalidSelector
Detail: Argument was an invalid selector (e.g. XPath/CSS).
class: org.openqa.selenium.InvalidSelectorException
我的语法错误了吗?
答案 0 :(得分:10)
表达式中存在语法错误,错过了结束In [175]:
df.groupby(level=0)['col2'].apply(lambda x: ','.join(x))
Out[175]:
col1
a ab,cd,ef
b kj,jk,l
Name: col2, dtype: object
:
]
但是,即使你修复它,你也会收到错误 - 这次是另一个错误。这是因为selenium中的XPath表达式必须指向Web元素而不是元素属性。换句话说,使用//a[contains(@href,'.pdf')]/@href
HERE^
查找元素,然后使用//a[contains(@href,'.pdf')]
方法获取get_attribute
属性值。
请注意,您还可以通过链接文字找到链接 :
href