2016-04-03 2 views
2

J'essaye d'écrire une application dans le studio android pour soumettre un formulaire dans un site Web html et analyser la page de résultat html pour le résultat. Je suis nouveau à ce genre de travail et j'ai besoin d'aide. J'ai travaillé avec Jsoup dans le passé mais seulement au point où je peux me connecter au html et analyser des choses. Je suis nouveau à soumettre des formulaires. La forme suivante est sur le site Web HTML que je veux soumettre avec l'étiquette d'entrée.Android Web Scraping pour résultat

<form role="form" ng-submit="searchForm.$valid &amp;&amp; searchEircode()" name="searchForm" novalidate="" class="ng-pristine ng-invalid ng-invalid-required ng-valid-minlength"> 
 
     <div class="input-group"> 
 
     <input placeholder="Enter a full address or Eircode" class="form-control ng-pristine ng-invalid ng-invalid-required ng-valid-minlength ng-touched" ng-class="{formcontrolRequired:searchForm.$submitted &amp;&amp; !searchForm.$valid || InvalidEircode}" ng-model="searchQuery" name="searchQuery" required="" autocomplete="off" spellcheck="false" typeahead="address.address for address in getAutoCompleteAddresses($viewValue)" typeahead-on-select="onSelect($item, $model, $label)" typeahead-focus-first="true" focus="" ng-minlength="3" search-bar="" aria-autocomplete="list" aria-expanded="false" aria-owns="typeahead-64-7981"><ul class="dropdown-menu ng-isolate-scope ng-hide" ng-show="isOpen()" ng-style="{top: position.top+'px', left: position.left+'px'}" style="display: block;;display: block;" role="listbox" aria-hidden="true" typeahead-popup="" id="typeahead-64-7981" matches="matches" active="activeIdx" select="select(activeIdx)" query="query" position="position"> 
 
    <!-- ngRepeat: match in matches track by $index --> 
 
</ul> 
 
      <span class="input-group-btn" ng-class="{current:loading}"> 
 
      <input type="submit" value="Search" class="btn btn-default btn-search-bar" ng-disabled="loading"> 
 
      <div id="floatingCirclesG"> 
 
       <div class="f_circleG" id="frotateG_01"> </div> 
 
       <div class="f_circleG" id="frotateG_02"> </div> 
 
       <div class="f_circleG" id="frotateG_03"> </div> 
 
       <div class="f_circleG" id="frotateG_04"> </div> 
 
       <div class="f_circleG" id="frotateG_05"> </div> 
 
       <div class="f_circleG" id="frotateG_06"> </div> 
 
       <div class="f_circleG" id="frotateG_07"> </div> 
 
       <div class="f_circleG" id="frotateG_08"> </div> 
 
      </div> 
 
      </span> </div> 
 
     <!-- ngIf: searchForm.$submitted --> 
 
     <div class="error-message ng-binding ng-hide" ng-show="InvalidEircode"> 
 
      
 
     </div> 
 
     </form>

De toute façon transmettrait très appréciée.

+0

Qu'est-ce que est la valeur du paramètre d'action du formulaire? Y a-t-il une URL où nous pouvons voir ce formulaire? – Stephan

Répondre

0

Cela aurait été plus facile si vous avez fourni l'URL. Mais de toute façon c'est très simple. Il suffit d'ouvrir l'outil de développement de votre navigateur, allez à onglet Réseau.

Ensuite, soumettez le formulaire à partir du navigateur normalement, puis vérifiez l'onglet réseau pour que la demande soit envoyée par le navigateur. Dans l'onglet header vous pourrez voir toutes les données de formulaire qui ont été envoyées et l'adresse du serveur.

Ensuite il vous suffit d'envoyer exactement la même chose avec Jsoup :)

J'ai posté un tutoriel détaillé sur la présentation des formulaires (connexion) à un site Web en utilisant Jsoup, vérifier here