2016-03-16 1 views
1

je suit à partir d'un site Web que je suis en train de gratterobtenir des résultats à venir à l'aide rvest submit_form

<td align="right"> 
       <span id="ctl00_ContentPlaceHolder1_lblCount1">825 records found, </span> 
       Page 
       <input name="ctl00$ContentPlaceHolder1$txtCurrent1" type="text" value="1" maxlength="4" id="ctl00_ContentPlaceHolder1_txtCurrent1" style="width:30px;" /> 
       of 
       <span id="ctl00_ContentPlaceHolder1_lblTotalPage1">83</span> 
       <input type="submit" name="ctl00$ContentPlaceHolder1$btnGo1" value="GO" id="ctl00_ContentPlaceHolder1_btnGo1" class="inputbtn" /> 
      </td> 

J'ai essayé le code suivant à l'aide du package rvest

pgsession <- html_session(url) 
pgform <- html_form(pgsession)[[1]] 
filled_form <- set_values(pgform,`ctl00$ContentPlaceHolder1$txtCurrent1` = 2) 
result <- submit_form(pgsession,filled_form) 

Je ne reçois pas la table suivante dans le site Web est revenue à moi. Comment puis-je utiliser ce package pour soumettre une valeur et récupérer le code HTML résultant? J'ai fait un peu fou et peut-être que je devrais utiliser les paquets Rhttr et rcurl pour ce faire.

Répondre

3

Je l'ai compris. Le code correct est:

pgsession <- html_session("url") 
pgform <- html_form(read_html(pgsession))[[1]] 
filled_form <- set_values(pgform, `ctl00$ContentPlaceHolder1$txtCurrent1` =2) 
result <- submit_form(pgsession,filled_form, submit='ctl00$ContentPlaceHolder1$btnGo1') 
case_home <- read_html(result)