Ich bin relativ neu zu R (und brandneues Spanking mit R), also Entschuldigung im Voraus, wenn ich etwas offensichtliches hier übersehe!Get RSelenium Fehler: "Antwort von Marionette konnte nicht decodieren"
Ich habe versucht, wie man lernt, indem Sie dieses Tutorial mit RSelenium kratzen: https://rawgit.com/petrkeil/Blog/master/2017_08_15_Web_scraping/web_scraping.html#advanced-scraping-with-rselenium
Nach dem folgenden im Terminal läuft (Docker Lauf -d -p 4445: 4444 Selen/Standalone-firefox), I versuchte, den R-Code unten, zog mit nur geringen Modifikationen aus dem Tutorial Hyperlink oben zu laufen:
get.tree <- function(genus, species)
{
# navigate to the page
browser <- remoteDriver(port=4445L)
browser$open(silent = T)
browser$navigate("http://www.bgci.org/global_tree_search.php?sec=globaltreesearch")
browser$refresh()
# create r objects from the web search input and button elements
genusElem <- browser$findElement(using = 'id', value = "genus-field")
specElem <- browser$findElement(using = 'id', value = "species-field")
buttonElem <- browser$fiendElement(using = 'class', value = "btn_ohoDO")
# tell R to fill in the fields
genusElem$sendKeysToElement(list(genus))
specElem$sendKeysToElement(list(species))
# tell R to click the search button
buttonElem$clickElement()
# get output
out <- browser$findElement(using = "css", value = "td.cell_1O3UaG:nth-child(4)") # the country origin
out <- out$getElementText()[[1]] # extract actual text string
out <- strsplit(out, split = "; ")[[1]] # turns into character vector
# close browser
browser$close()
return(out)
}
# Now let's try it:
get.tree("Abies", "alba")
Aber nach allem, was zu tun, bekomme ich folgende Fehlermeldung:
Selenium message:Failed to decode response from marionette Build info: version: '3.6.0', revision: '6fbf3ec767', time: '2017-09-27T16:15:40.131Z' System info: host: 'd260fa60d69b', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.9.49-moby', java.version: '1.8.0_131' Driver info: driver.version: unknown
Error: Summary: UnknownError Detail: An unknown server-side error occurred while processing the command. class: org.openqa.selenium.WebDriverException Further Details: run errorDetails method
Hat jemand eine Idee, was das bedeutet und wo ich falsch gelaufen bin?
Vielen Dank für Ihre Hilfe!
Verwenden Sie google Chrome oder eine ältere Version von Firefox wie im Tutorial ('sudo docker run -d -p 4445: 4444 selen/standalone-firefox: 2.53.0'). Das Problem mit neueren Versionen von Firefox ist, dass sie nach und nach auf das w3c-Protokoll wechseln. – jdharrison