使用POST方法提交登录表单时如何知道URL?

使用POST方法提交登录表单时如何知道URL?

我想使用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 形式发送数据等,这可能会有所不同。但是查看源代码,它会告诉您该怎么做。

相关内容