Javascript 通过Python在网页内下载CSV
有没有办法使用Python下载下面链接中名为“EXPE-Key-rations.CSV”的CSV文件Javascript 通过Python在网页内下载CSV,javascript,python,csv,Javascript,Python,Csv,有没有办法使用Python下载下面链接中名为“EXPE-Key-rations.CSV”的CSV文件 如果没有Python,可以通过单击“导出”按钮轻松下载,但我不懂Javascript,也不知道如何通过追踪JS代码生成Python中的真正下载路径。我试图按照中的步骤进行操作,但我无法根据我的问题进行调整。非常感谢您的帮助。好的,我一直在做这件事,最近的一次就是把它放到您的下载文件夹中——我不知道这个网站是如何与浏览器交互来调用这样的直接下载的。如果有人对这一切的后端更了解,能够解释它是如何工
如果没有Python,可以通过单击“导出”按钮轻松下载,但我不懂Javascript,也不知道如何通过追踪JS代码生成Python中的真正下载路径。我试图按照中的步骤进行操作,但我无法根据我的问题进行调整。非常感谢您的帮助。好的,我一直在做这件事,最近的一次就是把它放到您的下载文件夹中——我不知道这个网站是如何与浏览器交互来调用这样的直接下载的。如果有人对这一切的后端更了解,能够解释它是如何工作的,我将不胜感激 无论如何,以下是我将其放入下载文件夹的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
#Get a driver
driver = webdriver.Edge()
#Navigate to the page
driver.get('http://financials.morningstar.com/ratios/r.html?t=EXPE®ion=usa&culture=en-US')
#This is the javascript function that is invoked.
driver.execute_script("exportKeyStat2CSV()")
#Close the browser
driver.quit()
这将把csv放在下载文件夹中(无论是在什么地方)
要安装webdriver go,请下载它并将其与脚本一起放入目录中。您必须pip安装selenium。不需要selenium,缺少的是Referer头。javascript函数只是将order方法附加到
http://financials.morningstar.com/finan/ajax/exportKR2CSV.html?&callback=?&t=XNAS:EXPE®ion=usa&culture=en-US&cur=&order=
默认值为asc
导入请求
标题={
“Referer”:http://financials.morningstar.com/ratios/r.html?t=EXPE®ion=usa&culture=en-美国",,
}
r=请求。获取(“http://financials.morningstar.com/finan/ajax/exportKR2CSV.html?&callback=?&t=XNAS:EXPE®ion=usa&culture=en-US&cur=&order=asc“,页眉=页眉)
csv=r.content
打开(“EXPE Key rations.csv”、“wb”)作为文件:
文件写入(csv)
查看selenium,它可以通过python驱动web浏览器。