我正在尝试用python收集BeautifulSoup的文本

2024-04-27 02:42:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道如何用靓汤收集欲望数据这里是代码,试图收集文本数据是“RoSharon1977”

我试着用

<div id="twitter" class="editable-item">
  <div id="twitter-view">
     <ul><li>
        <a href="/redir/redirect?url=http%3A%2F%2Ftwitter%2Ecom%2FRoSharon1977&amp;urlhash=QRJD">RoSharon1977</a>
     </li></ul>
</div></div>

Tags: 数据代码文本divviewidtwitterli
1条回答
网友
1楼 · 发布于 2024-04-27 02:42:08

您必须通过id找到div,然后获取下一个ul元素,依此类推,继续向下钻取直到到达a元素,然后获取它的文本:

from bs4 import BeautifulSoup

html = '''<div id="twitter" class="editable-item">
  <div id="twitter-view">
     <ul><li>
        <a href="/redir/redirect?url=http%3A%2F%2Ftwitter%2Ecom%2FRoSharon1977&amp;urlhash=QRJD">RoSharon1977</a>
     </li></ul>
</div></div>'''

soup = BeautifulSoup(html)

print soup.find('div', attrs={'id': 'twitter-view'}).findNext('ul').findNext('li').findNext('a').text

或者根据整个网页的外观,您可以简单地执行以下操作:

soup = BeautifulSoup(html)

print soup.find('a').text

如果有多个a元素:

soup = BeautifulSoup(html)

for a in soup.find_all('a'):
    print a.text

相关问题 更多 >