Bir formda e-posta/parola girilmesini gerektiren bir web sayfası oluşturmak için rvest kullanmaya çalışıyorum. Bir web sayfasındaki standart olmayan formlarda oturum açmak için rvest veya httr kullanarak
rm(list=ls())
library(rvest)
### Trying to sign into a form using email/password
url <-"http://www.perfectgame.org/" ## page to spider
pgsession <-html_session(url) ## create session
pgform <-html_form(pgsession)[[1]] ## pull form from session
set_values(pgform, `ctl00$Header2$HeaderTop1$tbUsername` = "[email protected]")
set_values(pgform, `ctl00$Header2$HeaderTop1$tbPassword` = "mypassword")
submit_form(pgsession,pgform,submit=`ctl00$Header2$HeaderTop1$Button1`)
Bu
bana aşağıdaki hata iletisini veriyor: Sunduğum parametre belirtmeden formu gönderirseniz 'ctl00 $ Header2 $ HeaderTop1 $ Button1'bulunamadı
Error in submit_request(form, submit) :
nesne, ben anlayın:
Submitting with 'ctl00$Header2$HeaderTop1$Button1'
Error in function (type, msg, asError = TRUE) : <url> malformed
Ayrıca parametreleri doğrudan belirtildiği gibi httre'ye aktarmayı denedim Bu söz konusu: How can I POST a simple HTML form in R? ancak kabul etmedi "gönder" parametresi veya herhangi tırnaklar olmadan ya geriye tırnak (``), tırnak işaretleri gönder düğmesi: Ben giriş yapabilirsiniz nasıl
library(httr)
url <- "http://www.perfectgame.org/Rankings/Players/Default.aspx?gyear=2015&num=500"
fd <- list(
submit = `ctl00$Header2$HeaderTop1$Button1`,
`ctl00$Header2$HeaderTop1$tbUsername` = "[email protected]",
`ctl00$Header2$HeaderTop1$tbPassword` = "mypassword")
resp<-POST(url, body=fd, encode="form")
content(resp)
Herhangi bir fikir Bir R oturumu ve giriş duvarının arkasındaki verileri örümcek?
Merhaba, cevabınız için çok teşekkürler - çözümünüzden, doldurulmuş formu R'de bir nesne olarak kaydetmek yerine oturuma kaydetmek zorunda olduğunuzu şimdi anlıyorum. Ancak, 200 durum kodunuzu çoğaltamam gibi görünmüyor - Yukarıdaki kodu çalıştırıyorum ve yukarıda listelenen aynı hatayı alıyorum. "Ile gönderme" ctl00 $ Header2 $ HeaderTop1 $ Button1 ' İşlevde hata (type, msg, asError = TRUE): malformed " Aradaki fark ne olabilir? –
gbostock
DÜZENLEME: En yeni R (3.1.3) sürümüne yükledim ve aynı mesajı aldım. Teşekkürler! Bir göz atacağım ve rapor vereceğim. – gbostock
Bu mükemmel bir şekilde çalıştı. Tekrar teşekkürler! – gbostock