Загрузка значений ввода формы с веб-страниц в URLRequest?
-
10-07-2019 - |
Вопрос
Как бы я вытащил значения формы для источника HTML ниже и добавил их в NSURLConnection?
<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>
Решение 2
Я использовал elementParser . Спасибо!
Другие советы
Если вы знаете, что HTML также является допустимым XML, вы можете выполнить все это через NSXMLParser (или другой код синтаксического анализа XML) и выполнить какое-либо действие всякий раз, когда он обнаруживает элемент, являющийся входом формы (например, <input>
). р>
В противном случае, вам может быть лучше просто написать свою собственную функцию (и) синтаксического анализа строк - найдите любой экземпляр тега, который вы хотите захватить, потяните весь текст между < и > символов, разделите его пробелами, а затем найдите имя поля ввода, чтобы вы могли поместить его в NSURLConnection.