1

私はhtmlページをフェッチするためのlxmlに取り組んでいます。
クラス名が「class1」のhtmlテーブルを取得したい。
私はこのようなことをしました:

for span in doc.xpath('//table[@class="class1"]'):
print span

しかし、
この後、HTMLページに「class1」というクラス名を持つ4つのテーブルがあることがわかりました。
例えば ​​:

table A
table B
table C
table D

これらの4つのテーブルはすべて同じクラス名を持っています。
テーブルBのみをフェッチするにはどうすればよいですか?

4

2 に答える 2

3

リストの 2 番目の項目を取得できます。

結果 = doc.xpath('//table[@class="class1"]')
len(結果) > 1 の場合:
  印刷結果[1]

または、テーブルに ID がある場合は、xpath 経由で取得できます。

print doc.xpath('//table[@id="you id"]')[0]
于 2012-04-18T04:47:27.920 に答える
2

ここであなたが望むのは...

doc.xpath('//table[@class="class1"]')[1]
于 2012-04-18T04:49:10.570 に答える