Caricamento dei valori di input del modulo dalle pagine Web in URLRequest?
-
10-07-2019 - |
Domanda
Come estrarre i valori del modulo per la sorgente HTML di seguito e aggiungerli a una connessione NSURLC
<tr>
<th><label for="username"><span class="accesskey">N</span>etID:</label></th>
<td><input id="username" name="username" class="required" tabindex="1" accesskey="n" type="text" value="" size="32" autocomplete="false"/></td>
</tr><tr>
<th><label for="password"><span class="accesskey">P</span>assword:</label></th>
<td><input id="password" name="password" class="required" tabindex="2" accesskey="p" type="password" value="" size="32"/></td>
</tr><tr>
<th><label for="authenticationType"><span class="accesskey">A</span>uthentication Type:</label></th>
<td>
<select id="authenticationType" name="authenticationType">
<option value="Kerberos">Default</option>
<option value="SafeWord">SafeWord</option>
</select>
</td>
</tr><tr>
<th></th>
<td>
<input type="checkbox" id="warn" name="warn" value="true" tabindex="3" />
<label for="warn" class="other" accesskey="w"><span class="accesskey">W</span>arn me before logging me into other sites.</label>
</td>
</tr><tr>
<th></th>
<td>
<input type="hidden" name="_currentStateId" value="" />
<input type="hidden" name="_eventId" value="submit" />
<input type="submit" accesskey="l" value="LOGIN" tabindex="4" />
</td>
</tr>
Soluzione 2
Ho usato elementParser . Grazie!
Altri suggerimenti
Se sai che l'HTML è anche un XML valido, puoi eseguire tutto tramite un NSXMLParser (o altro codice di analisi XML) ed eseguire alcune azioni ogni volta che rileva un elemento che è un input di modulo (come <input>
).
Altrimenti, potresti stare meglio semplicemente scrivendo le tue funzioni di analisi delle stringhe: cerca qualsiasi istanza del tag che vuoi catturare, tira tutto il testo tra < e > caratteri, dividerlo per spazi, quindi trovare il nome del campo di input in modo da poterlo inserire in una NSURLConnection.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow