hel*_*elp 2 r web-scraping rvest
我是 R 新手,目前正在从事一项涉及网络抓取的作业。
我应该阅读此网页中的所有句子:https://www.cs.columbia.edu/~hgs/audio/harvard.html
这是我当前的代码:
library(xml2)
library(rvest)
url <- 'https://www.cs.columbia.edu/~hgs/audio/harvard.html'
read_html(url)
sentences <- url %>%
html_nodes("li") %>%
html_text()
Run Code Online (Sandbox Code Playgroud)
每次我运行它时,我都会收到此错误:
UseMethod("xml_find_all") 中的错误:没有适用于“xml_find_all”的方法应用于类“character”的对象
你能帮我么?我不明白我做错了什么。
您忘记分配一个变量(我想它的目的是相同的url)read_html(url)。读取“字符串”而不是“xml_document”也是如此url %>% html_nodes("li"),这就是错误告诉您的内容(在内部rvest::html_nodes调用函数xml2::xml_find_all)。
你可以这样做:
html <- read_html(url)
sentences <- html%>%
html_nodes("li") %>%
html_text()
Run Code Online (Sandbox Code Playgroud)
或者这个,如果你只读url一次
sentences <- read_html(url) %>%
html_nodes("li") %>%
html_text()
Run Code Online (Sandbox Code Playgroud)