首页 > 解决方案 > 使用 find() 使用漂亮的汤进行网络抓取时返回“无”

问题描述

我正在尝试使用 BeautifulSoup & Requests 从 bbc 网站上选择 FTSE 价格,但是当我运行它时得到输出“无”。

import sys
import requests
from bs4 import BeautifulSoup

URL = 'https://www.bbc.co.uk/news/topics./c9qdqqkgz27t/ftse-100'
page = requests.get(URL,timeout=5)
#fetch content from URL
soup = BeautifulSoup(page.content,'html.parser')
#parse html content

price =  soup.find(class_='gel-paragon nw-c-md-market-summary_value')
#price = soup.find("div", class_="gel-paragon nw-c-md-market-summary_value")
#find class with name 'gel...'
print(price)

我尝试使用不同类型的 find 函数,但都返回相同。我计划最终使用此逻辑从多个页面收集数据,但希望在尝试迭代之前正确处理。

标签: web-scrapingbeautifulsoupfindpython-requests

解决方案


你的网址是错误的,我做了很少的编辑,它的工作原理!

import requests
from bs4 import BeautifulSoup

URL = 'https://www.bbc.co.uk/news/topics/c9qdqqkgz27t/ftse-100'
page = requests.get(URL)
soup = BeautifulSoup(page.content,'html.parser')
price =  soup.find('div', attrs={
    'class':'gel-paragon nw-c-md-market-summary__value'})
print(price.text)

输出:

7442.28

推荐阅读