如何从需要按键的URL中获取

时间:2014-03-06 08:41:01

标签: java bash wget

我正在尝试从此网址下载:

  

http://www.histdata.com/download-free-forex-historical-data/?/ascii/1-minute-bar-quotes/eurusd/2014/2

使用bash wget

但是,我需要手动按下“在此下载历史数据”右侧的链接

有没有办法在命令行的代码中执行此操作?

EDIT 1

或者从java也可以。

3 个答案:

答案 0 :(得分:1)

我认为你需要编写一些代码来实现这一点,使用支持Javascript的html客户端库,例如PhantomJS,如this question的答案所述。

其他选项包括Python的mechanize库,以及this answer中提到的一些内容。

如果您正在Java寻找无头浏览库,我会看一下HtmlUnit。 我个人并没有亲自使用它,所以我不能保证它的稳定性或易用性。

答案 1 :(得分:0)

您无法下载,因为下载是通过JavaScript触发的。 最好在普通计算机上下载它,然后将其上传到其他服务器,这样您就可以通过HTTP直接访问该文件。你可以在命令行下载它。

答案 2 :(得分:0)

由于我想自己学习PhantomJS,我尝试了它,但似乎phantomjs还不够成熟,无法正确支持这一点。 由于我花了很多时间来理解链接是如何工作的,所以这里是php的解决方案,您可以将其复制并粘贴到Download.php并从命令行运行,假设您已{已安装{1}}。我希望它也可以作为未来人们尝试编写此类内容的样本。

php-cli