雅虎财经网络爬虫

时间:2020-07-24 22:23:58

标签: python

我正在编写一个网络爬虫程序,以从Yahoo Finance获取公司的股价。

import re
import urllib.request

stock = input('Enter a company to check its stock.')

with urllib.request.urlopen('https://finance.yahoo.com/quote/' + stock) as urlfile:
    urltext = urlfile.read()
    stock_pattern = r'(\d+)\.(\d+)'
    for i in re.findall(stock_pattern, str(urlfile.read())):
        print(i)

如何获取公司的当前股价?我怀疑它应该与for循环有关。

1 个答案:

答案 0 :(得分:0)

如果您要使用非API方法。查看名为Selenium的库。这样一来,您就可以挑选出某个要素(即当前的股价)。

这是一个例子:

from selenium import webdriver

browser = webdriver.Chrome(executable_path='the file path of where you saved chrome driver')

browser.get('https://finance.yahoo.com/quote/' + stock)
stockPrice = find_element_by_xpath('//*[@id="quote-header-info"]/div[3]/div/div/span[1]')
print(stockPrice)

但是,是的,我也会在评论中遵循人们的建议,并研究一些金融网站的api。