Python WebScraping问题输出为;无”;

Python WebScraping问题输出为;无”;,python,web-scraping,Python,Web Scraping,输入: 输出: 目前的价格是:无 我不知道为什么我的回答是“无”。我试图从雅虎那里得到FB股票的当前价格。我不知道你的问题,但我猜你的问题是错误的类元素,你应该找到Id元素 我强烈建议您使用Selenium和Scapy,Selenium支持XPATH,自动删除某些元素,自动单击,易于使用的请求库 硒医生:这是 scapy:这是你的代码中有一些错误,我已经修复了,你在下面检查一下 代码: 输出: 如果您有任何问题,请告诉我:)它没有找到您要找的内容。使用soup.find…是否尝试搜索数据中已知

输入:

输出: 目前的价格是:无


我不知道为什么我的回答是“无”。我试图从雅虎那里得到FB股票的当前价格。

我不知道你的问题,但我猜你的问题是错误的类元素,你应该找到Id元素

我强烈建议您使用Selenium和Scapy,Selenium支持XPATH,自动删除某些元素,自动单击,易于使用的请求库

硒医生:这是


scapy:这是你的代码中有一些错误,我已经修复了,你在下面检查一下

代码:

输出:


如果您有任何问题,请告诉我:)

它没有找到您要找的内容。使用
soup.find…
是否尝试搜索数据中已知的其他内容?如果你只是键入
print(r)
print(soup)
以确保你得到你认为应该得到的回报,我不知道你得到了什么。是的,我得到了正确的网站,当我键入print(r)时,我得到了网站状态码,当我打印(soup)时,我得到了我应该得到的源代码,我不知道怎么了。我打印(汤)时看不到价格?也许硒是你最好的选择。但是,请在这段时间中间使用一段时间,否则您将被阻止。这也可能很有趣。
import requests 
from bs4 import BeautifulSoup


def FBPrice():
    r = requests.get('https://finance.yahoo.com/quote/FB?p=FB')
    soup = BeautifulSoup(r.text, 'xml')
    price = soup.find('div', class_ = 'My(6px) Pos(r) smartphone_Mt(6px)')
    return price 

while True:
    print("The current price is:" +str(FBPrice()))
import requests
from bs4 import BeautifulSoup


def FBPrice():
    r = requests.get('https://finance.yahoo.com/quote/FB?p=FB')
    soup = BeautifulSoup(r.text, 'html.parser')
    price = soup.find('span', {"data-reactid":"32"})
    return price.text

while True:
    print("The current price is:" +str(FBPrice()))