【问题标题】:Is it possible to capture XHR response data using WebDriver是否可以使用 WebDriver 捕获 XHR 响应数据
【发布时间】:2012-12-05 15:05:50
【问题描述】:

我正在使用 Selenium WebDriver 编写小型机器人。 是否可以使用 browsermob-proxy 或任何其他方式从 XmlHttpRequests 的响应中捕获数据?我需要检查从 POST/GET 查询接收到的数据。 实际上问题与browsermob-proxy的功能更相关,我找不到答案。

【问题讨论】:

  • 你能找到这个问题的答案吗?
  • 这个问题有什么更新吗?
  • 有代理,是的

标签: selenium webdriver selenium-webdriver


【解决方案1】:

我相信答案是否定的,但是您可以让 Selenium 执行 javascript 来发送 post/get 并检索响应标头...我使用类似这样的东西来显示错误(jqXHR 是 jQuery 的响应 XML 对象:http://api.jquery.com/jQuery.ajax/#jqXHR )

$.post(destURL, formresult, function (data) {

//... process return data

}).fail(function (jqXHR, textStatus, error) {
    DisplayError(jqXHR, textStatus, error);


});

【讨论】:

    【解决方案2】:

    我只能想象用 Javascript 或 GreaseMonkey 拦截 AJAX 调用的常用方法。我用这个解决方案得到了很好的结果:https://stackoverflow.com/a/6805461/3034120 例如,您可以将输出替换为日志以创建一个 div 并用响应填充它。然后你可以用 Selenium 读出来。

    【讨论】:

    • 有没有人用硒尝试过这个并验证它是否有效? (问是因为没有赞成票)
    • 这并不是这里真正要问的。有人可能有 Python 和 Selenium 的解决方案吗?
    猜你喜欢
    • 1970-01-01
    • 2020-09-16
    • 2014-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-18
    • 1970-01-01
    • 2020-07-12
    相关资源
    最近更新 更多