2015-09-07 4 views
8

Ich habe ein Problem mit der Anmeldung in meinem Skript. Trotz aller anderen guten Antworten, die ich auf stackoverflow fand, funktionierte keine der Lösungen für mich.Passwort geschütztes Forum scrappen in

Ich bin ein Web-Forum für meine Doktorarbeit Schaben, ist die entsprechende URL http://forum.axishistory.com.

Die Webseite ich kratzen will, ist die Mitgliederliste - eine Seite, die Links zu allen Mitgliederprofilen auflistet. Man kann nur auf die Mitgliederliste zugreifen, wenn man sich angemeldet hat. Wenn Sie versuchen, auf die Mitgliederliste zuzugreifen, ohne sich einzuloggen, wird Ihnen das Anmeldeformular angezeigt.

Die URL der Mitglieder ist dies: http://forum.axishistory.com/memberlist.php.

habe ich versucht, das HTTR-Paket:

library(httr) 
members <- GET("http://forum.axishistory.com/memberlist.php", authenticate("username", "password")) 
members_html <- html(members) 

Die Ausgabe ist das Protokoll in der Form.

Dann habe ich versucht RCurl:

library(RCurl) 
members_html <- htmlParse(getURL("http://forum.axishistory.com/memberlist.php", userpwd = "username:password")) 
members_html 

Die Ausgabe der Log-in Form ist - wieder einmal.

Dann habe ich versucht, die Liste() Funktion von diesem Thema - Scrape password-protected website in R:

handle <- handle("http://forum.axishistory.com/") 
path <- "ucp.php?mode=login" 

login <- list(
    amember_login = "username" 
    ,amember_pass = "password" 
    ,amember_redirect_url = 
    "http://forum.axishistory.com/memberlist.php" 
) 

response <- POST(handle = handle, path = path, body = login) 

und wieder! Die Ausgabe ist die Anmeldeform.

Das nächste, was an dem ich arbeite ist RSelenium, aber nach all diesen Versuchen Ich versuche, herauszufinden, ob ich wohl etwas fehlt bin (wahrscheinlich etwas ganz offensichtlich).

ich bei anderen relevanten Stellen in hier ausgesehen haben, konnte aber nicht herausfinden, wie Sie den Code meinem Fall anwenden:

How to use R to download a zipped file from a SSL page that requires cookies

Scrape password-protected website in R

How to use R to download a zipped file from a SSL page that requires cookies

https://stackoverflow.com/questions/27485311/scrape-password-protected-https-website-in-r

Web scraping password protected website using R

+0

Ich glaube, Sie nur Ihren Benutzernamen und Passwort in alle Code-Schnipsel setzen. Vielleicht möchtest du sie entfernen und dein Passwort auf der entsprechenden Seite ändern. – WWhisperer

+0

Das stimmt! Jetzt bearbeitet. Vielen Dank. –

+0

Wenn ich auf "editiert x mins ago" klicke, kann ich immer noch Ihre Daten sehen ... nur ein Hinweis für Ihren nächsten Post. hast du deine login-daten im forum geändert und wo auch immer du sie benutzt? :) – WWhisperer

Antwort

6

Dank Simon fand ich die Antwort hier: Using rvest or httr to log in to non-standard forms on a webpage

library(rvest) 
url  <-"http://forum.axishistory.com/memberlist.php" 
pgsession <-html_session(url) 

pgform <-html_form(pgsession)[[2]] 

filled_form <- set_values(pgform, 
         "username" = "username", 
         "password" = "password") 

submit_form(pgsession,filled_form) 
memberlist <- jump_to(pgsession, "http://forum.axishistory.com/memberlist.php") 

page <- html(memberlist) 

usernames <- html_nodes(x = page, css = "#memberlist .username") 

data_usernames <- html_text(usernames, trim = TRUE)