【问题标题】:Using Tampermonkey to automate download of csv file on webpage [duplicate]使用 Tampermonkey 自动下载网页上的 csv 文件 [重复]
【发布时间】:2018-01-22 20:29:03
【问题描述】:

我完全是新手,但我正在尝试整理一些代码,这些代码将每小时自动从网页下载一个 .csv 文件并将其保存到我的计算机(最好是特定位置)。该数据是来自苏格兰的每小时降雨数据,位于以下网站。

http://apps.sepa.org.uk/rainfall

基本上,我需要能够选择左侧地图中的一个站点(每次都是同一个站点)并从右上角的下拉菜单中下载每小时降雨量 .csv 文件图的。手动执行时,您将鼠标悬停在下载按钮上,然后将鼠标悬停在“下载为...”上,然后在出现时选择“CSV”。

根据我在此处阅读的内容,Chrome Tampermonkey extension used in conjunction with the Windows Task Scheduler 可能是执行此操作的最佳方式。从上一个问题有代码:

document.getElementById("download_button").click();

我尝试将“download_button”部分替换为可能描述页面上 CSV 按钮元素 ID 的内容,例如使用“CSV”;但我真的不确定按钮的元素 ID 是什么。我已经尝试检查源代码中的元素,但由于我是新手,所以我真的不知道我在寻找什么。

我还尝试按类和路径搜索元素,但我真的不确定要为类和路径输入什么值才能访问我需要的特定下载按钮。

document.getElementByClass("export-main").click();

document.getElementByPath("//*[@id=\"chartdiv\"]/div/div[2]/ul/li/ul/li[1]/ul/li[3]/a/span").click();

任何帮助将不胜感激,我什至不确定这是否可能,或者这是否是最好的方法。

提前感谢您能给我的任何帮助。

【问题讨论】:

    标签: javascript download automation webpage tampermonkey


    【解决方案1】:

    作为概念证明,更好的方法是针对您需要的数据(位置)的特定 http GET 请求。这样您就可以获得您要求的 JSON 格式的响应(可以转换为 CSV)。谷歌如何打开Chrome DevTools (F12),你会在网络选项卡上找到你需要的请求(一堆请求,其中一些包含你在响应中需要的数据)。 当您复制请求 URL(从网络选项卡)时,请按照此 page 的说明从命令行执行下载。 准备好后,您可以通过 windows 任务调度程序执行该命令。

    【讨论】:

      猜你喜欢
      • 2016-02-04
      • 2019-01-15
      • 1970-01-01
      • 2016-02-14
      • 2020-12-29
      • 1970-01-01
      • 2014-12-02
      • 2020-11-23
      • 2020-09-13
      相关资源
      最近更新 更多