gpt4 book ai didi

javascript - 将 PhantomJS 与 Selenium Webdriver 和 Python 结合使用

转载 作者:数据小太阳 更新时间:2023-10-29 03:57:53 27 4
gpt4 key购买 nike

我目前正在使用 Selenium Webdriver 对页面进行一些验证。 Webdriver 由 PhantomJS 驱动。我知道在 PhantomJS 中,您可以使用如下示例收听网络:(来自 https://github.com/ariya/phantomjs/wiki/Network-Monitoring)。

var page = require('webpage').create();
page.onResourceRequested = function (request) {
console.log('Request ' + JSON.stringify(request, undefined, 4));
};
page.onResourceReceived = function (response) {
console.log('Receive ' + JSON.stringify(response, undefined, 4));
};
page.open(url);

如何在 Webdriver 中实现此功能?我可以将函数绑定(bind)到 DesiredCapabilities 吗?

最佳答案

你想在这里实现什么?可以注入(inject)javascript。因此,您可以创建一个对象来监听页面并将其记录到您稍后在执行某些操作时获取的对象。

我会试一试,但我不确定 phantomJS 的作用。

browser.execute_script("    
var requests= [];
var received = [];
var page = require('webpage').create();
page.onResourceRequested = function (request) {
requests.push('Request ' + JSON.stringify(request, undefined, 4));
};
page.onResourceReceived = function (response) {
received.push('Receive ' + JSON.stringify(response, undefined, 4));
};
page.open(url);");

稍后(如果您仍在同一页面上)获取请求:

browser.execute_script("function(){return requests }()");

和接收到的连接:

browser.execute_script("function(){return received}");

关于javascript - 将 PhantomJS 与 Selenium Webdriver 和 Python 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17755526/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com