-1
私はJsoupを使用してHTML文字列からデータを取得しようとしていますが、成功しません。 HTMLコードはJsoupは常にnullを返します
<form>
<table>
<tr>
<th>First</th>
<th>Second</th>
<th>Third</th>
</tr>
<tr>
<td><input type="text" name="elems[][f]" value="one" /></td>
<td><input type="text" name="people[][s]" value="two" /></td>
<td><input type="text" name="people[][t]" value="three" /></td>
</tr>
<tr>
<td><input type="text" name="elems[][f]" value="one1" /></td>
<td><input type="text" name="people[][s]" value="two2" /></td>
<td><input type="text" name="people[][t]" value="three3" /></td>
</tr>
</table>
<input type="submit" value="next" />
私は別の例を試してみた
、何もです。私はthとすべてのtdからデータを取得します。これは「目」の一例です:あなたは、HTMLの入力は、このような文字列変数に置いた場合
Document document = Jsoup.parse(HTMLSTring);
Elements tables = document.select("table");
for (Element table : tables){
Elements ths = table.getElementsByTag("th");
for(Element th : ths)
{
System.out.println(th.text());
}
}
最初に 'tr'を確認する必要はありませんか? –
正しい* '
'getElementsByTag'は再帰的なので、最初に' tr'をチェックする必要はありません。あなたのコードは動作します... JSoupが 'null'を返すのではありません。 'HTMLSTring'に正しいhtmlコンテンツを受け取ったかどうか確認しましたか? – Nirekin
答えて
あなたのコードは...
に動作します:
あなたが期待しています結果。
あなたがHTMLの入力を読んでいる方法で問題を有していても良いです。
たとえば、ブレークポイントを
Document document = Jsoup.parse(HTMLSTring);
に設定して、必ず上位のコンテンツを受信します。出典
2017-10-19 09:31:00 Nirekin
関連する問題