我只想从数据标签中删除信息,而不是从整个a标签中删除信息
有没有关于如何使用python和beautiful soup实现这一点的想法。。我一直得到整个a标签,而不仅仅是“数据和电子邮件”。 下面是示例标记:
<a class="lf_font-weight--light agent-email mailto" data-ldpphone="111-111-111" data-ldpemail="person@company.com" data-personid="10480733">Me</a>
import requests
from bs4 import BeautifulSoup
soup = BeautifulSoup(open('test.html'), 'html.parser')
people = soup.find('div', id='search-results')
items = people.find_all('figure')
#print(items)
print(items[0].find('h1').get_text())
print(items[0].find('h3').get_text())
email = soup.find('a', attrs={"data-ldpemail" : "x"})
email = email.attrs['data-ldpemail']
print(email)
由于您没有提供任何代码来演示您是如何到达目的地的,我假设您知道如何隔离所需的“a”标记
需要注意的是,在示例中,“data ldpmail”不是标记,而是“a”(锚定)标记的标记属性。假设您隔离了一个具有该属性的标记,然后提取该属性的值:
bs4.element.Tag.attrs
将返回一个字典,其中包含标记的所有属性作为键,每个标记的值作为字典值。然后我们只访问属性字典的键一句话可以从一些汤中获取全部:
上面的一行代码所做的是查找整个soup对象中的所有锚定标记,迭代该集合,如果锚定标记具有“data ldpemail”属性,则将“data ldpemail”标记属性的值添加到
email_list
相关问题 更多 >
编程相关推荐