我想刮一个股票网站,并获得价格使用硒。我不能使用普通的HTML请求,因为HTML是动态的。我正在使用无头硒webdriver来获取数据,但是每个请求大约需要30秒。有更快的方法获得动态HTML吗?
发布于 2019-10-10 04:55:44
该网站正在从XHR获取数据。
因此,您可以只使用请求和json.loads加载它,这已经快得多了。
至于比轮询更快地更新HTML,有一些框架(傀儡)可以将更新事件从浏览器发送到主脚本,但是AFAIK没有办法在Python中这样做。
发布于 2019-10-10 06:08:10
有两个API,您可以使用获得摘要信息和公司简介的基础上。为了提高效率,您可以使用更快的请求和会话来请求这些信息。
import requests
tickers = ['FB']
results = {}
with requests.Session() as s:
for ticker in tickers:
results[ticker] = {}
r = s.get(f'https://api.nasdaq.com/api/quote/{ticker}/summary?assetclass=stocks').json()
results[ticker]['summary'] = r
r = s.get(f'https://api.nasdaq.com/api/company/{ticker}/company-profile').json()
results[ticker]['profile'] = r
https://stackoverflow.com/questions/58315190
复制相似问题