使用cURL(或其他....)使用按钮上传和下载文件

时间:2016-04-20 21:52:22

标签: bash curl

我想知道如何在bash中使用,以便首先在互联网页面上选择一些参数,然后上传* .txt文件,并重定向(在文件分析后)到另一个页面,最后按下按钮以bash的形式下载所有这些新文件。

我在论坛上发现了很多关于cURL以及如何填写表单和下载文件的信息,但通常你可以通过访问URL / file.txt来下载文件。在我看来它是不同的,因为页面使用一些代码来分析我的.txt文件并输出一个新文件。

该网站为MSC server,我需要检查选项2中的CADD复选框,通过选择文件上传* .txt,点击上传&提交,并在重定向后点击下载结果。这是html的重要部分

第一页:

<form action="DownloadServlet" method="post">
<input type="submit" value="Download Result" color ="#ff0000" size = 200>

第二页:

curl -L -F measure1=CADD -F fname=@file2.txt -F submit="Upload & Submit" http://pec630.rockefeller.edu/MSC/

这就是我试过的

Sub BASICPQS()
'
' BASICPQS Macro
'

'
    Sheets("PRODUCTION").Range("$A$1:$AA$146").AutoFilter Field:=9, Operator:= _
        xlFilterValues, Criteria2:=Array(1, "3/31/2016", 1, "4/27/2016")
    ActiveWindow.SmallScroll Down:=-18
End Sub

这就是我为第一页尝试的内容,但它只在终端上显示了同一页面的HTML代码而不是我应该重定向的HTML代码。即使它给我第二页的HTML,我也不知道如何下载文件,首先是因为网址发生变化所以我不知道该为网址添加什么(我认为它是饼干的东西,但我不确定)其次,即使我尝试点击按钮并下载文件(例如,在示例按钮上第一页,它仍然显示HTML代码,它不会下载文本文件)。

我希望我足够清楚,你能够帮助我,我仍然是编程的初学者,自从我开始寻找如何做到这一点已经过了10个小时:/。

另外,因为这是我的第一个问题(我通常总会发现以前的问题,就像我的一样),我借此机会感谢你们,因为你们的答案总是很清楚,我希望我能做到这一点。当我能更好地理解我的所作所为时,能够帮助其他人:)

1 个答案:

答案 0 :(得分:0)

我没有找到我正在寻找的那种代码(我想这是一个有问题的cookie,但即使我试图用cURL处理它们也没有用)但我找到了解决“任何”问题的方法(我认为)cURl问题。也许它会帮助别人:

只需将您的计算机发送的标头复制到网站,就像您要执行的操作一样: 在谷歌铬 查看 - &gt;开发者 - &gt;开发人员工具 - &gt; 做你想做的事 - &gt;右键单击侧栏中弹出的名称 - &gt;复制为cURL - &gt;将其粘贴到您的代码中

这当然不是最好的方法,但是如果你像我一样绝望,它会起作用:)