gpt4 book ai didi

javascript - 无法在 PhantomJS 中启用 JavaScript

转载 作者:行者123 更新时间:2023-11-29 21:42:03 25 4
gpt4 key购买 nike

我的代码是...

var webPage = require('webpage');
var page = webPage.create();
page.open("http://www.mangaumaru.com/archives/503925", function(status) {
console.log(page.content);
phantom.exit();
});

和“C:\>phantomjs main.js”结果是这样的:

<html><head><title>You are being redirected...</title>
<noscript>Javascript is required. Please enable javascript
before you are allowed to see this page.</noscript>

我该如何解决这个问题?

最佳答案

JavaScript 在 PhantomJS 中默认启用。 <noscript>无论是否启用 JavaScript,元素始终是源的一部分。当 JavaScript 被禁用时,元素就不会被渲染。打印源代码不会告诉您太多信息。例如,您需要将屏幕截图呈现为 page.render("screenshot.png")查看 noscript 元素是否可见。

当完成这样的 JavaScript 重定向时,通常会在一段时间后触发。您需要确定您的页面的时间,但您可以通过稍等片刻(直到加载下一页)来解决该问题:

page.open("http://www.mangaumaru.com/archives/503925", function(status) {
setTimeout(function(){
console.log(page.content);
phantom.exit();
}, 10000);
});

或者您可以注册页面加载事件,这样您就可以看到第二个页面已加载:

page.open("http://www.mangaumaru.com/archives/503925", function(status) {
page.onLoadFinished = function(status){
console.log(page.content); // actual page
phantom.exit();
};
});

关于javascript - 无法在 PhantomJS 中启用 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32424884/

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