Ich verwende das xml2-Paket in R, um Daten von einer Webseite zu scrappen.Web-Scraping in R eines Attributs, das einen Teilstring enthält
<td>
<a href="javascript:WebForm_DoPostBackWithOptions(new
WebForm_PostBackOptions("ctl00$CenterContent$ctl01",
"", true, "", "", false,
true))">Species A
</a></td>
<td>
<a href="javascript:WebForm_DoPostBackWithOptions(new
WebForm_PostBackOptions("ctl00$CenterContent$ctl02",
"", true, "", "", false,
true))">Species B </a></td>
<td><a href="javascript:WebForm_DoPostBackWithOptions(new
WebForm_PostBackOptions("ctl00$CenterContent$ctl03",
"", true, "", "", false,
true))">Sepcies C </a></td>
<td>
<a href="javascript:WebForm_DoPostBackWithOptions(new
WebForm_PostBackOptions("ctl00$CenterContent$ctl04",
"", true, "", "", false,
true))">Species D</a></td>
<td>
<a href="javascript:WebForm_DoPostBackWithOptions(new
WebForm_PostBackOptions("ctl00$CenterContent$ctl05",
"", true, "", "", false,
true))">Species E </a></td>
Ich habe versucht, in R mit den folgenden Codezeilen: Der Text, den ich kratzen will von der unten aufgeführten Tags eingeschlossen
library(xml2)
page = read_html(website)
nodes = html_nodes(page, xpath='//td/a[@href*="javascript"]')
Mit dem obigen Code, ich möchte nur extrahieren alle Knoten, die ein Attribut href haben, die die Teil „javascript“ enthalten, aber ich erhalte eine Fehlermeldung unter:
xmlXPathEval: evaluation failed
Warning message:
In xpath_search(x$node, x$doc, xpath = xpath, nsMap = ns, num_results = Inf) :
Invalid expression [1207]
ich wäre dankbar, wenn jemand irgendwelche Vorschläge.
Danke für die Zeit.
Prost.
Sind Sie gebunden 'xpath' mit? Andernfalls können Sie Folgendes tun: 'jscripts <- page %>% rvest :: html_nodes ('td')%>% rvest :: html_nodes ('a')%>% rvest :: html_attr ('href')%>% . [grepl ('javascript',.)] '. Sie müssen das "magritr" -Paket für den Pfahlbetreiber verwenden. – Abdou