使用 Rselenium 抓取空白值
blank value captures while scraping using Rselenium
我正在尝试从代码中的 URL 中抓取一个文本框值。我使用选择器小工具选择了 css。它无法捕获文本框中的内容。也测试了其他几个 CSS 但未捕获文本框值。
文本框是:建造年份
请帮忙 。下面是代码供参考。
url = "https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848"
values = list()
remDr$navigate(url)
page_source<-remDr$getPageSource()
a = read_html(page_source[[1]])
= html_nodes(a,"#ctl00_mainContentPlaceholder_txtConstructionYear_iu")
values = html_text(html_main_node)
values
提前致谢
为什么选择 RSelenium?它与 rvest 配合得很好(尽管它是一个糟糕的 SharePoint 站点,可能会在维护正确的视图状态 cookie 时导致问题)。
library(rvest)
pg <- html_session("https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848")
html_attr(html_nodes(pg, "input#ctl00_mainContentPlaceholder_txtConstructionYear_iu"), "value")
## [1] 1987
您应该抓住 value
属性 与节点文本。这也应该适用于您的 selenium 代码。
以上答案也有效。但是如果你只是想使用 RSelenium
。这是代码
library(RSelenium)
checkForServer()
startServer()
Sys.sleep(5)
re<-remoteDriver()
re$open()
re$navigate("https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848")
re$findElement(using = "css selector", "#ctl00_mainContentPlaceholder_txtConstructionYear_iu")$clickElement()
text<-unlist(re$findElement(using = "css selector", "#ctl00_mainContentPlaceholder_txtConstructionYear_iu")$getElementAttribute("value"))
这个有效
我正在尝试从代码中的 URL 中抓取一个文本框值。我使用选择器小工具选择了 css。它无法捕获文本框中的内容。也测试了其他几个 CSS 但未捕获文本框值。 文本框是:建造年份 请帮忙 。下面是代码供参考。
url = "https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848"
values = list()
remDr$navigate(url)
page_source<-remDr$getPageSource()
a = read_html(page_source[[1]])
= html_nodes(a,"#ctl00_mainContentPlaceholder_txtConstructionYear_iu")
values = html_text(html_main_node)
values
提前致谢
为什么选择 RSelenium?它与 rvest 配合得很好(尽管它是一个糟糕的 SharePoint 站点,可能会在维护正确的视图状态 cookie 时导致问题)。
library(rvest)
pg <- html_session("https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848")
html_attr(html_nodes(pg, "input#ctl00_mainContentPlaceholder_txtConstructionYear_iu"), "value")
## [1] 1987
您应该抓住 value
属性 与节点文本。这也应该适用于您的 selenium 代码。
以上答案也有效。但是如果你只是想使用 RSelenium
。这是代码
library(RSelenium)
checkForServer()
startServer()
Sys.sleep(5)
re<-remoteDriver()
re$open()
re$navigate("https://www.ncspo.com/FIS/dbBldgAsset_public.aspx?BldgAssetID=8848")
re$findElement(using = "css selector", "#ctl00_mainContentPlaceholder_txtConstructionYear_iu")$clickElement()
text<-unlist(re$findElement(using = "css selector", "#ctl00_mainContentPlaceholder_txtConstructionYear_iu")$getElementAttribute("value"))
这个有效