为什么';错误:长度(url)==1不正确';使用rvest刮网
我正在尝试抓取web数据,但第一步需要登录。我已经成功地登录到其他网站,但我发现这个网站有一个奇怪的错误为什么';错误:长度(url)==1不正确';使用rvest刮网,r,web-scraping,rvest,R,Web Scraping,Rvest,我正在尝试抓取web数据,但第一步需要登录。我已经成功地登录到其他网站,但我发现这个网站有一个奇怪的错误 library("rvest") library("magrittr") research <- html_session("https://www.fitchratings.com/") signin <- research %>% html_nodes("form") %&g
library("rvest")
library("magrittr")
research <- html_session("https://www.fitchratings.com/")
signin <- research %>%
html_nodes("form") %>%
extract2(1) %>%
html_form() %>%
set_values (
'userName' = "abc",
'password' = "1234"
)
research <- research %>%
submit_form(signin)
library(“rvest”)
图书馆(“magrittr”)
研究百分比
抽提物2(1)%>%
html_表单()%>%
设置值(
“用户名”=“abc”,
“密码”=“1234”
)
研究百分比
提交表格(签名)
当我运行“提交表单”行时,出现以下错误:
> research <- research %>%
+ submit_form(signin)
Submitting with '<unnamed>'
Error: length(url) == 1 is not TRUE
>研究%
+提交表格(签名)
以“”提交
错误:长度(url)==1不是真的
未命名提交是正确的b/c没有为登录按钮指定名称。感谢您的帮助 我也有同样的问题。为了让rvest的开发版本运行起来,我经历了一些困难,现在它工作得很顺利。我是这样做的: 第一件事。您需要安装RTools。确保R已关闭。可以在以下位置找到:。 安装Rtools的信息可以在这里找到(如果您使用的是Windows):github.com/stan-dev/rstan/wiki/Install-Rtools-for-Windows 启动R,然后安装“httr”和“Rcpp”库(如果您还没有) 安装“devtools”和相关的github安装程序。信息是可以找到的,但我会给你一个链接回购的快速总结 窗口:
install.packages("devtools")
library(devtools)
build_github_devtools()
#### Restart R before continuing ####
install.packages("devtools.zip", repos = NULL, type = "source")
# Remove the package after installation
unlink("devtools.zip")
Mac/Linux:
devtools::install_github("hadley/devtools")
现在,运行最后的步骤
library(httr)
library(Rcpp)
library(devtools)
install_github("hadley/rvest")
您现在应该能够运行submit\u form(会话,表单)
而不会遇到错误
Submitting with 'xxxx'
Error: length(url) == 1 is not TRUE
这个例子仍然有效吗?当我运行它时,我得到了
错误:未知字段名:用户名,密码
。此外,这个问题似乎是由于rvest中的一个错误造成的,并且由rvest包作者解决了:不幸的是,自那以后,没有发布rvest的正式版本(带有修复)。但是,可以从github手动安装最新版本。注意:Rtools仅在Windows上是必需的。在Mac和Linux上,安装一个开发包非常简单(这是一个命令,如您的答案所示)。事实上,我很久没有使用CRAN了,我从Github安装了所有东西。