我想使用linux命令下载html页面wget
例子:
wget“https://stackexchange.com/users/5215687/dipankar-nalui?tab=inbox”
要下载此页面,我需要通过 URL 发送登录信息。
怎么做 ?
我想知道类似这样的 URL =>
https://stackexchange.com/users/5215687/dipankar-nalui??postlogin&Email=test%40user.com&Password=12345
答案1
使用 Firefox 或 Google Chrome,打开开发人员工具(右键单击页面并选择检查),然后选择网络选项卡。
确保您正在记录请求,然后在页面上正常登录。滚动浏览记录的网络请求(可能会很多),直到找到要重新创建的请求。右键单击请求并选择复制为curl。
这会将curl命令复制到系统剪贴板中,您应该能够将其直接粘贴到shell中,重新创建浏览器发出的确切请求,具体包括cookie、标头和查询参数。
答案2
您将需要在包含表单的网页上选择查看源。
寻找表单标签,它看起来像下面的行,您关心的是操作部分,这是您需要发布数据的地方。
<form method=post action=login.php>
查找包含用户名和密码输入的字段。查找输入的名称。
<input type=text name=username> </input>
...
<input type=text name=password> </input>
然后将它们附加到您的 wget 中,即
wget https://somesite.com/login.php?username=foo&password=bar
根据页面编写的语言或是否以 JSON 形式发送数据等,这可能会有所不同。但是查看源代码,它会告诉您该怎么做。