Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1830 connectés 

  FORUM HardWare.fr
  Programmation
  BI/Big Data

  R - Modifier du html & l'envoyer à un serveur via httr

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

R - Modifier du html & l'envoyer à un serveur via httr

n°2280731
saint malo
Posté le 03-05-2016 à 18:57:04  profilanswer
 

Hello,
 
J'essaie de faire (sous R avec le package httr, parce que je maîtrise suffisamment que PHP et ça) un script qui prend en entrée nom et prénom et regarde si la personne a fait certaines écoles, en allant consulter les annuaires publics de ces écoles. J'ai réussi facilement pour l'X, mais je galère pour sciences po, parce que leur annuaire) utilise du javascript (je crois).
 
1) Pour autant que je sache, pour le champ "nom", il faut que j'accède à cette partie du code html :
 

Code :
  1. <div class="annuaireRecherche-v2" style="">
  2.      <span>Nom</span>
  3.      <div class="select2-container select2-allowclear autocomplete" id="s2id_PersonneNom" style="min-width: 0;">
  4.        <a href="javascript:void(0)" class="select2-choice" tabindex="-1">    
  5.          <span class="select2-chosen" id="select2-chosen-3">Derez</span>
  6.          <abbr class="select2-search-choice-close"></abbr>    
  7.          <span class="select2-arrow" role="presentation">
  8.            <b role="presentation"></b>
  9.          </span>
  10.        </a>
  11.        <label for="s2id_autogen3" class="select2-offscreen"></label>
  12.        <input class="select2-focusser select2-offscreen" type="text" aria-haspopup="true" role="button"  
  13.            aria-labelledby="select2-chosen-3" id="s2id_autogen3" tabindex="0">
  14.      </div>
  15.      <input type="hidden" name="PersonneNom" id="PersonneNom" class="autocomplete" style="min-width: 0px;  
  16.            display: none;" data-placeholder="Saisir un nom" data-multiple="" data-libelle=""  
  17.            value="LeNomQueJeVeuxTester" data-limit="" tabindex="-1" title="">
  18. </div>


 
2) et dans le dernier tag <input>, changer l'attribut value par le nom que je veux vérifier.
 
3) Ensuite, je dois "cliquer" (aucune idée de comment) sur

Code :
  1. afficher les résultats

sur la droite. Le code html de ce bouton :
 

Code :
  1. <div class="showResultsButton" style="text-align: center; display: block;">
  2.       <a href="#" class="jqueryButton  ui-button ui-widget ui-state-default ui-corner-all ui-button-text-icon-primary" onclick="showResultList($('.shortResults')); return false;" role="button">
  3.         <span class="ui-button-icon-primary ui-icon ui-icon-search"></span>
  4.         <span class="ui-button-text">
  5.           Afficher les résultats
  6.         </span>
  7.       </a>
  8.     </div>


 
4) Et enfin, aller au tag <div class="people clearfix"> et récupérer le contenu des tags <a href="...">  
 

Code :
  1. <div class="people clearfix">
  2.      <div class="tab_result" style="clear:both">
  3.       <div class="ppl">
  4.        <div class="ppl-wrap clearfix" style="clear:both">
  5.         <div class="ppl-image">
  6.          <a href="/profil/francois.hollande74" target="_blank">
  7.           <img alt="" src="/ressources/temp/100_120t121_153006959_inconnu.jpeg">
  8.          </a>
  9.         </div>
  10.         <div class="ppl-content">
  11.          <h3>
  12.           <a href="/profil/francois.hollande74" target="_blank">Hollande  François</a>
  13.          </h3>
  14.          <p class="meta">D Service Public Promo 1974</p>
  15.          <p></p>
  16.         </div>
  17.          <div class="ppl-content" style="float:right"></div>
  18.         </div>
  19.        <p class="buttons">
  20.         <a class="button " href="/profil/francois.hollande74" target="_blank">
  21.          Voir le profil
  22.         </a>
  23.        </p>
  24.       </div>
  25.      </div>
  26.     </div>


 
Le problème, c'est que, à l'étape 2, je ne sais pas comment modifier le contenu de l'attribut et envoyer ça au serveur. Mon code jusqu'ici
 

Code :
  1. library(XML)
  2. library(httr)
  3. library(foreach)
  4. url        <- "http://www.sciences-po.asso.fr/gene/main.php?base=1244"   
  5. response   <- GET(url)
  6. doc        <- content(response, type="text/html", encoding = 'ISO-8859-1')
  7. parseddoc  <- htmlParse(doc)
  8.    
  9. # je dois modifier le contenu de ça
  10. xpathApply(parseddoc, "//*[@id='PersonneNom']/@value" )
  11. # et m'assurer que c'est envoyé au serveur, puis récupérer le code renvoyé en retour, etcaetera...


 
Si quelqu'un a une idée de comment faire ça ?
 
Merci d'avance


Message édité par saint malo le 11-05-2016 à 20:26:39
mood
Publicité
Posté le 03-05-2016 à 18:57:04  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  BI/Big Data

  R - Modifier du html & l'envoyer à un serveur via httr

 

Sujets relatifs
OUTILS NOMENCLATUREProgrammation de differents capteurs HTML
Insérer une image dans un tableau HTML envoyée par sendmailClient/Serveur Python
Comment bien apprendre le HTML/CSS[python] conseil pour la création d'un serveur de jeux
Insérer des données CSV dans un graph sur une page CSS/HTMLRéduire poids images avant de les charger dans une page HTML
Réduire poids images avant de les charger dans une page HTML 
Plus de sujets relatifs à : R - Modifier du html & l'envoyer à un serveur via httr


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR