wget如何从提示您单击“同意”条件的网页下载文件
我想使用wget实用程序下载文件。 我按照“ 如何使用wget / curl从我登录的站点下载? ”的说明进行操作,下载过程正常; 但是,保存的cookie会在一段时间后过期,因此我无法在第二天继续下载该文件。
这是我正在尝试从以下位置下载文件的URL:
https://frbservices.org/EPaymentsDirectory/FedACHdir.txt
下载页面要求我在继续下载之前单击“同意”按钮。
有没有办法在wget实用程序中包含“同意”提交?
谢谢。
您可以使用--post-data
选项使用wget
提交表单。 首先,查看页面使用的表单:
通常, action
属性的值用于获取目标URL,该URL变为https://frbservices.org/EPaymentsDirectory/submitAgreement
。 表单元素的name
s成为参数。 然后,您需要保存从接受协议中获得的cookie。 从这篇SOpost中 ,我们可以构建所需的命令:
wget --post-data="agreementValue=Agree" https://frbservices.org/EPaymentsDirectory/submitAgreement --save-cookies cookie.txt --keep-session-cookies --delete-after
然后,我们可以使用这些cookie来下载文件:
wget --load-cookies=cookie.txt 'https://frbservices.org/EPaymentsDirectory/FedACHdir.txt?AgreementSessionObject=Agree'