Я пытаюсь собрать URL-адреса с веб-страницы с Rselenium, но получаю сообщение об ошибке InvalidSelector
Используйте R 3.6.0 на ПК с Windows 10, Rselenium 1.7.5 с веб-драйвером Chrome (chromever = "75.0.3770.8")
library(RSelenium)
rD <- rsDriver(browser=c("chrome"), chromever="75.0.3770.8")
remDr <- remoteDriver(port = 4567L, browserName = "chrome")
remDr$open()
url <- "https://www.aph.gov.au/Senators_and_Members/Parliamentarian_Search_Results?q=&mem=1&par=1&gen=0&ps=96"
remDr$navigate(url)
tt <- remDr$findElements(using = "xpath", "//a[contains(@href,'http://twitter.com/')]/@href")
Я ожидаю сбора URL-адресов в учетных записях Twitter политиков из списка.
Вместо этого я получаю следующую ошибку:
Селеновое сообщение:
invalid selector: The result of the xpath expression "//a[contains(@href,'http://twitter.com/')]/@href" is: [object Attr]. It should be an element.
(Session info: chrome=75.0.3770.80)
For documentation on this error, please visit: https://www.seleniumhq.org/exceptions/invalid_selector_exception.html
Build info: version: '4.0.0-alpha-1', revision: 'd1d3728cae', time: '2019-04-24T16:15:24'
System info: host: 'ALEX-DELL-17', ip: '10.0.75.1', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_191'
Driver info: driver.version: unknown
Ошибка: сводка: InvalidSelector
Подробно: Аргумент был неверным селектором (например, XPath / CSS).
класс: org.openqa.selenium.InvalidSelectorException
Дополнительная информация: запустить метод errorDetails
Когда я выполняю похожий поиск очень специфического элемента, все работает нормально, пример:
tt <- remDr$findElement(value = '//a[@href = "http://twitter.com/AlboMP"]')
, затем
tt$getElementAttribute('href')
возвращает мне URL, который мне нужен
Что я делаю не так?