gpt4 book ai didi

javascript - url-to-image 渲染我尝试的每个 URL,除了我需要的 URL

转载 作者:行者123 更新时间:2023-12-03 05:15:24 25 4
gpt4 key购买 nike

我正在尝试实现明显有用且强大的 url-to-image module 。使用基本示例脚本,我可以渲染我尝试的任何网站并将其另存为 .png,除了我需要的使用 Angular 的网站。

我需要登录页面之外的内容,但我什至无法呈现登录页面:http://momentum-leaderboard.herokuapp.com/#/login

关于如何使该模块适用于此 URL 有什么想法吗?或者关于另一个工具来呈现这样的页面图像的想法?

最佳答案

PhantomJS独自一人就可以解决这个问题。此脚本应该足以呈现此登录页面:rasterizeSimple.js

var page = require('webpage').create(),
system = require('system'),
address, output, size;

if (system.args.length != 3) {
console.log('Usage: rasterize.js URL filename');
phantom.exit(1);
} else {
address = system.args[1];
output = system.args[2];
page.viewportSize = { width: 600, height: 600 };

page.open(address, function (status) {
if (status !== 'success') {
console.log('Unable to load the address!');
phantom.exit(1);
} else {
window.setTimeout(function () {
page.render(output);
phantom.exit();
}, 2000);
}
});
}

通过登录屏幕是另一回事。由于 PhantomJS 是一个 Web 浏览器,因此我们只需打开登录页面,填写表单,按下登录按钮,等待几秒钟,然后以登录用户的身份重新调用感兴趣的 url。登录表单可以通过不同的方式完成,如果您愿意,您可以注入(inject) jquery。没有测试第二个脚本,但它应该可以帮助您继续。

    page.open(address, function (status) {
if (page.injectJs('jquery-1.11.2.js')) { // Loads from the working dir i think
if (status !== 'success') {
console.log('Unable to load the address!');
phantom.exit(1);
} else {
page.evaluate(function() {
$('input[name=username]').val('username');
$('input[name=password]').val('password123');
$('input[name=submit]').click();
});

window.setTimeout(function () {
page.open(address, function (status) {
if (status == 'success') {
window.setTimeout(function () {
page.render(output);
phantom.exit();
}, 2000);
}
});
}, 2000);
}
}
});

关于javascript - url-to-image 渲染我尝试的每个 URL,除了我需要的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41624477/

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