Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python web抓取数据val?_Python_Python 3.x_Beautifulsoup - Fatal编程技术网

Python web抓取数据val?

Python web抓取数据val?,python,python-3.x,beautifulsoup,Python,Python 3.x,Beautifulsoup,我想从此站点()获取“last”值,并将其用于我自己的项目我已经有了以下代码: from bs4 import BeautifulSoup import requests page = requests.get("https://www.kraken.com/charts") page soup = BeautifulSoup(page.content, 'html.parser') euro = soup.find(class_="val mono").get_text() euro

我想从此站点()获取“last”值,并将其用于我自己的项目我已经有了以下代码:

from bs4 import BeautifulSoup
import requests

page = requests.get("https://www.kraken.com/charts")
page

soup = BeautifulSoup(page.content, 'html.parser')

euro = soup.find(class_="val mono").get_text()

euro = float(euro)

但这将返回一个字符串而不是数据值。有人知道如何选择数据值而不是字符串吗?

您可以这样选择:

euro = soup.find(class_="val mono")
euro_val = euro['data-val']

您可以通过以下方式进行选择:

euro = soup.find(class_="val mono")
euro_val = euro['data-val']

我可以问你另一个快速的问题吗?我现在想从这个网站上获取“last”数字:但是它在div中的一个跨度内,我怎么做?基本上你可以这样选择元素:
last=soup.find(attrs={'data-bind':'text:summary.displayLast()})
但它将返回不带文本的元素,因为文本是动态加载的,bf无权访问它。对于动态页面,您可以尝试
Selenium
方法,并在打开页面后添加睡眠。让我们一起来。我可以问您另一个快速问题吗?我现在想从这个网站获取“last”数字:但它在div内的跨度内,我如何才能做到这一点?基本上,您可以这样选择元素:
last=soup.find(attrs={'data-bind':'text:summary.displayLast()})
但它将返回没有文本的元素,因为文本是动态加载的,bf无权访问它。对于动态页面,您可以尝试
Selenium
方法,并在打开页面后添加睡眠。让我们来看看。