为什么Beautifulsoup不从此页面返回所需的项目?

2024-10-01 22:44:16 发布

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

我在学习教程,但不管我要求什么,比如menuitem=page_soup.findAll(“h5”) 它总是一无所获,但我知道它们存在,我能看到它们,但它什么也找不到 我做的和教程完全一样,但它一直在说什么都没有,我试图从一个工厂网站上找到用我的语言显示并在页面上可见的工厂名称 示例:https://identify.plantnet.org/observation/weurope/1007256673

我试图从那一页上得到一个单词,但这似乎是不可能的,因为汤一直在说,当它们存在的时候,它们是不存在的 谢谢你的帮助


Tags: https名称语言示例网站工厂page教程
1条回答
网友
1楼 · 发布于 2024-10-01 22:44:16

数据是以Json格式从API动态加载的,因此BeautifulSoup看不到它。但是您可以使用requests模块来加载它:

import json
import requests


url = 'https://identify.plantnet.org/observation/weurope/1007256673'

headers = {'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0'}
api_url = 'https://api.plantnet.org/v1/projects/weurope/observations/{plant_id}?lang=en'
plant_id = url.split('/')[-1]

data = requests.get(api_url.format(plant_id=plant_id), headers=headers).json()

# uncomment this to print all data:
# print(json.dumps(data, indent=4))

# print some data to screen:
print('{} - {}'.format(data['submittedName'], data['species']['commonNames'][0]))

印刷品:

Solanum dulcamara L. - Bittersweet

相关问题 更多 >

    热门问题