1

Python は初めてで、BeautifulSoup を使用して、次のような html 内にすべての「必要な値」を出力することを検討していました。

<!-- UNIQUE COMMENT 1 -->
</td>
<td class="same_class_name">
 Value Needed A
</td>
<!-- UNIQUE COMMENT 2 -->
</td>
<td class="same_class_name">
 Value Needed B
</td>
<!-- UNIQUE COMMENT 3 -->
</td>
<td class="same_class_name">
 Value Needed C
</td>

私はこのコードスニペットを書いてみました:

valueNeeded = soup.body.find('td', attrs={'class':'same_class_name'}).text
print valueNeeded

これは確かに「Value Needed A」を出力しますが、私の問題は次の2つの値を考慮していないことです. また、最初にコメントで一意の値を見つけてから値を見つける方法があるかどうかを特定しようとしましたが、それでもうまくいきません。

値を引き出すための助けをいただければ幸いです。前もって感謝します。

4

1 に答える 1

0

使用find_all():

>>> valueNeeded = soup.find_all('td', attrs={'class':'same_class_name'})
>>> for tag in valueNeeded:
...     print tag.text.strip()
... 
Value Needed A
Value Needed B
Value Needed C

soup.body戻ってきたように見えたので、コードからを削除したことに注意Noneしてください。

BeautifulSoup バージョン 3 を使用している場合は、findAll().

于 2013-08-18T01:41:44.743 に答える