如何在Python中搜索类元素?

时间:2019-10-19 07:16:34

标签: python html class element

我是Python的新手,并且在线观看了多个有关Web抓取的教程视频。

这是目标网站中的元素:

<span class="status ng-binding"> 14 </span>

这是我的编码:

import requests
import bs4

headers = {"User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36'}

res = requests.get('https://gleam.io/cevFk/castrio-october-streaming-pc-giveaway?gsr=cevFk-SxAtZtT4Ir', headers=headers)
soup = bs4.BeautifulSoup(res.text, 'html.parser')
print(soup.select("#status ng-binding"))

我正在尝试从目标网站提取/输出数字(为14)。难道我做错了什么?任何答案将不胜感激。

2 个答案:

答案 0 :(得分:0)

soup.find('span',{'class':'classname'},recursive = True).text

可以添加更多属性: {'attr':'value','attr':'value'}

find_all()返回一个列表 在嵌套标签中重新搜索 ewrewr

答案 1 :(得分:0)

问题在于原始响应中缺少预期的跨度。

您可以按照以下步骤进行验证。

response = requests.get(url, headers)
soup = bs4.BeautifulSoup(response.text, 'html.parser')

#print soup.prettify()
# print(soup.prettify())
print('title',soup.title)
print('fiind all spans', soup.find_all('span'))