【问题标题】:identifying url for autologging识别自动记录的 url
【发布时间】:2012-02-02 20:23:26
【问题描述】:

我想识别特定网站的登录网址并自动登录。 视图源码显示form标签如下:

<form id="signIn" onsubmit="return false;" action="/f1/logon" method="post">

我如何识别 url 并传递请求的参数?

我尝试了以下建议,但没有任何帮助。更多建议?

【问题讨论】:

  • 您要连接的站点的主机名 + action 的值将使您非常接近。您还需要在源中搜索实际的用户名和密码字段。您是否还有关于如何使用正则表达式或一些类似的解析工具解析此字符串的问题?
  • onsubmit="return false;" 表明登录可能由 AJAX 处理,或者该脚本在提交表单之前混淆了登录详细信息。
  • @normalocity...hostname/f1/logon 在 UI 中不显示任何内容。我现在不问解析。我想找到一种登录网站的方法。感谢您的提问。
  • @javaiText:似乎登录是由 javascript 处理的。要确保使用 firefox live http header 插件,看看手动登录时会发生什么。如果涉及 javascript,您需要使用像 htmlunit 这样可以处理 javascript 的无头浏览器。
  • 您还可以将实时 http 标头输出添加到您当前的问题中以更清晰。

标签: java http-headers httpclient web-scraping autologin


【解决方案1】:

安装Fiddler 并提交表单。它会告诉您请求的 URL 以及传递的参数。

【讨论】:

  • 我已经下载了 fiddler。我现在如何追踪?
  • @javaiText:启动 Fiddler。它将显示在任何浏览器中提交的所有请求和响应,因此您导航到浏览器中的表单并观察请求出现在 Fiddler 视图中。然后,当您在 Fiddler 中单击请求时,您将看到其详细信息。
【解决方案2】:

可以从 javascript 代码提交表单。寻找使用signIn元素,例如可能是javascript,

var form = document.getElementById("signIn");
form.action = "<URL>";
form.submit();

另一种获取 URL 和参数的方法是浏览器插件,例如 HttpWatch(用于 IE)或 HttpFox(用于 FireFox)。他们可以监控请求和响应。

【讨论】:

  • 我没有看到你在 javascript 中提到的内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-04
  • 2019-03-11
  • 2020-11-10
  • 2014-07-17
  • 2015-10-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多