我有一个页面,我想从一个脚本标签提取一个数字(这里是8806090571589)
我试着先用
获取脚本jsonn = r.html.find('script')[3].text
print(title, price, jsonn)
但是没有成功。
页面的源代码在这里(太长了,不能发布):
查看源代码:https://www.kaufland.de/product/361834606/?search_value=waschmaschine
当您使用find()时,它将只返回第一次出现的标记。因为我可以看到您需要找到第4次出现,所以您需要使用findAll()函数。它将返回一个包含所有事件的列表,然后您可以根据需要使用任何事件。
我试过在我的电脑上使用下面给出的代码-
import urllib3
from bs4 import BeautifulSoup
URL = "https://www.kaufland.de/product/361834606/?search_value=waschmaschine"
response = urllib3.PoolManager().request("GET", URL, headers={'User-Agent' : "python"})
soup = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
print(soup.findAll("script")[3])
你可以把这段代码作为参考,并根据你的需要修改。