我已阅读以下问题,但无法完全解决这个问题。尝试通过发布表单登录网站。请阅读以下内容:
工作示例:
加载包:
install.packages("RHTMLForms", repos = "http://www.omegahat.org/R", type = "source") require(RHTMLForms)
require(RCurl)
require(XML)
我正在连接到https://www.moodys.com/ :
url <- getURL("https://www.moodys.com/",
cainfo = system.file("CurlSSL",
"cacert.pem", package = "RCurl"))
获取登录表单:
forms <- getHTMLFormDescription(url)
并将表格寄回:
fun <- createFunction(forms$aspnetForm)
results <- fun(MdcUserName = "xxx@xxx", MdcPassword="xxxx")
这给了我以下错误消息:
Error in function (type, msg, asError = TRUE) :
Could not resolve host: NA; Host not found
我知道复制/解决此错误可能需要有效的用户名和密码,但非常感谢。
类似问题:
R - posting a login form using RCurl
https://stackoverflow.com/questions/19327001/https-php-login-via-rcurl-post
What if I want to web scrape with R for a page with parameters?
最佳答案
您可以使用Selenium
和RSelenium登录网页
library(RSelenium)
RSelenium::startServer()
appURL <- "http://www.moodys.com"
username <- "someuser"
password <- "somepass"
remDr <- remoteDriver()
remDr$open()
remDr$navigate(appURL)
logIn <- remDr$findElement("id", "LoginText")
logIn$clickElement()
userName <- remDr$findElement("id", "MdcUserName")
userName$sendKeysToElement(list(username))
passWord <- remDr$findElement("id", "MdcPassword")
passWord$sendKeysToElement(list(password))
logIn <- remDr$findElement("id", "LoginImageButton")
logIn$clickElement()
关于RCurl表单登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24314622/