我已经用Python创建了一个脚本来解析网页中的两个字段 -
然而,问题是页面上可见的日期与页面源代码中可用的日期不同。 网页链接 该网页中的日期如this 页面源代码中的日期如this 显然有一天的差异。
访问那个网页后,当您点击此选项卡
我已经尝试过:
当我使用这个股票代码
总收入
和它相关的日期
。 我需要的字段是JavaScript加密的。 它们在json数组中的页面源代码中可用。 以下脚本可以相应地解析这两个字段。然而,问题是页面上可见的日期与页面源代码中可用的日期不同。 网页链接 该网页中的日期如this 页面源代码中的日期如this 显然有一天的差异。
访问那个网页后,当您点击此选项卡
季度报告
时,您可以在那里看到结果。我已经尝试过:
import re
import json
import requests
url = 'https://finance.yahoo.com/quote/GTX/financials?p=GTX'
res = requests.get(url)
data = re.findall(r'root.App.main[^{]+(.*);',res.text)[0]
jsoncontent = json.loads(data)
container = jsoncontent['context']['dispatcher']['stores']['QuoteSummaryStore']['incomeStatementHistoryQuarterly']['incomeStatementHistory']
total_revenue = container[0]['totalRevenue']['raw']
concerning_date = container[0]['endDate']['fmt']
print(total_revenue,concerning_date)
我得到的结果(收入以百万为单位):
802000000 2019-06-30
我想要得到的结果:
802000000 2019-06-29
当我使用这个股票代码
AAPL
时,我得到了确切的日期,所以减去或加上一天不是一个选项。如何从该网站获取确切的日期?顺便说一下,我知道如何使用 selenium 获取它们,所以我只想坚持使用 requests
。