Python web抓取数据val?
我想从此站点()获取“last”值,并将其用于我自己的项目我已经有了以下代码: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
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
方法,并在打开页面后添加睡眠。让我们来看看。