Ich versuche, einige Verkehrsdaten von pems.dot.ca.gov herunterladen, nach this topic.Mit rvest, wie HTML-Inhalte aus dem Objekt extrahieren von submit_form()
rm(list=ls())
library(rvest)
library(xml2)
library(httr)
url <- "http://pems.dot.ca.gov/?report_form=1&dnode=tmgs&content=tmg_volumes&tab=tmg_vol_ts&export=&tmg_station_id=74250&s_time_id=1369094400&s_time_id_f=05%2F21%2F2013&e_time_id=1371772740&e_time_id_f=06%2F20%2F2013&tod=all&tod_from=0&tod_to=0&dow_5=on&dow_6=on&tmg_sub_id=all&q=obs_flow&gn=hour&html.x=34&html.y=8"
pgsession <- html_session(url)
pgform <-html_form(pgsession)[[1]]
filled_form <- set_values(pgform,
'username' = 'omitted',
'password' = 'omitted')
resp = submit_form(pgsession, filled_form)
resp_2 = resp$response
cont = resp_2$content
überprüfte ich die class()
dieser Elemente und stellte fest, dass die bzw. eine ‚Sitzung‘ ist, resp_2 ist eine ‚Antwort‘, und cont ist ‚raw‘. Meine Frage ist: Wie kann ich den HTML-Inhalt richtig extrahieren, so dass ich mit XPath fortfahren kann, um die tatsächlichen Daten auszuwählen, die ich von dieser Seite haben möchte? Meine Intuition ist, dass ich das resp_2 analysieren sollte, was eine Antwort ist, aber ich kann es einfach nicht funktionieren lassen. Ihre Hilfe wird sehr geschätzt!
Haben Sie Selector Gadget angeschaut? Ich finde es nützlich, um bestimmte Teile einer Webseite zu finden, die ich extrahieren möchte. http://selectorgadget.com/. Es funktioniert gut mit 'html_nodes' und' html_text' in 'rvest' – Warner
Ich habe gerade in das Gadget geschaut und es scheint cool. Aber meine Frage ist nicht, wie man Zeug aus HTML auswählt, es geht darum, wie man die Antwort oder das Raw in HTML umwandelt. Danke für deine Antwort trotzdem! – user3768495
Es scheint, dass die Site einen Benutzernamen und ein Passwort benötigt, um über den Eröffnungsbildschirm zu gelangen. Sie Code-Code oben verwendet "ausgelassen", die keine gültige Kombination ist. Wenn Sie ein Beispiel für die aktuelle Seite, an der Sie interessiert sind, veröffentlichen können, wäre es hilfreicher. – Dave2e