使用python从使用javascript显示信息的网站下载数据

使用python从使用javascript显示信息的网站下载数据,python,python-3.x,web-scraping,beautifulsoup,Python,Python 3.x,Web Scraping,Beautifulsoup,我通常使用以下模板脚本从网站下载数据: import urllib.request as web from bs4 import BeautifulSoup ... url_to_visit ='http://www.website-link-to-download-data' source_code = web.urlopen(url_to_visit).read() source_code = ''.join(map(chr, source_code) source_code = sour

我通常使用以下模板脚本从网站下载数据:

import urllib.request as web
from bs4 import BeautifulSoup
...
url_to_visit ='http://www.website-link-to-download-data'
source_code =  web.urlopen(url_to_visit).read()
source_code = ''.join(map(chr, source_code)
source_code = source_code.split('\n')
## then further process the lines returned in `source_code` as needed
但有时我会遇到非常困难的网站

请考虑以下站点:。假设从第一个表
日内警报-美国
,我想通过Python脚本下载单击
SP TMI
选项卡时显示的信息

我查看了上面的
splitSource
的输出,但是我不知道如何提取我想要的信息。它似乎在使用Javascript后端来显示信息。有人能给我一些建议吗

我正在使用Python 3.x.

当您激活“SP TMI”选项卡时,会有一个发送到“intraday announcements.json”端点的POST请求-在代码中模拟该请求并解析json响应

示例工作代码使用:

印刷品:

Dividend
Weekly Share Change
Special Dividend
Merger/Acquisition
Merger/Acquisition
Drop
Merger/Acquisition
Merger/Acquisition
Drop
Identifier Changes

请注意,生效日期实际上在URL中,请参见
11-14-2015
部分。

本页的一个快速问题:
http://www.ftse.com/products/index-notices/home/getnotices/?id=GEISAC&title=
,我如何找到
json
或等效的
请求
?@uday很乐意提供帮助。只需使用浏览器开发工具,检查所提出的请求。在快速查看之后,我认为有一个GET请求发送到
http://www.ftse.com/products/index-notices/Backend/GetNotices
包含页面上通知列表的端点。如果你很难得到所需的数据,考虑做一个新的单独的问题,以便更多的人可以帮助。谢谢
Dividend
Weekly Share Change
Special Dividend
Merger/Acquisition
Merger/Acquisition
Drop
Merger/Acquisition
Merger/Acquisition
Drop
Identifier Changes