【发布时间】:2019-01-21 10:30:10
【问题描述】:
我目前正在尝试在 1 或 5 分钟的时间从 stooq.com 网站自动抓取一些证券交易所数据。我尝试使用bs4中的BeautifulSoup获取它,但在网站的表格中找不到它,也无法设法获取html5图表的基础数据。
这是包含 html5 图表的网站的链接:
dax_link = 'https://stooq.com/q/a2/?s=^dax&i=1&t=l&a=lg&z=500&ft=201808141221&l=0&d=1&ch=0&f=0&lt=57&r=0&o=1'
我使用 beautifulsoup 尝试了以下方法:
import pandas as pd
import requests
import re
from bs4 import BeautifulSoup as bs
stooq_dax = ('https://stooq.com/q/a2/?s=^dax&i=1&t=l&a=lg'
'&z=500&ft=201808141221&l=0&d=1&ch=0&f=0<=57&r=0&o=1')
reqstdax = requests.get(stooq_dax)
stdax = reqstdax.content
soupstdax = bs(stdax)
tbls_dax = soupstdax.table
df = pd.read_html(str(tbls_dax))
但是 31 个数据帧中没有一个包含任何有用的数据。
我还尝试在网站中查找一些特定值,例如
soupstdax.find_all(text=re.compile('12368'))
这是2018-08-14,15:24:00当时的“打开”值,但找不到。
我当然可以通过单击右下角的 csv 按钮来获取这些值,但这不能自动执行,因为到 csv-generation 的链接是隐藏的(我做到了无法重建它)。
有什么方法可以获取图表的基础数据或找到生成 csv 文件的正确链接?
提前致谢!
【问题讨论】:
标签: python html web-scraping beautifulsoup