phantomjs - 将phantom js处理的页面保存到带有绝对url的html文件中

标签 phantomjs absolute

我想在通过所有 url 将文档加载到特殊文件名后保存我的特殊网页,并将链接转换为绝对 url,例如 wget -k .

//phantomjs
var page = require('webpage').create();
var url = 'http://google.com/';
page.open(url, function (status) {
var js = page.evaluate(function () {
return document;
});
console.log(js.all[0].outerHTML);
phantom.exit();
});

例如我的 html 内容是这样的:
<a href="//page.html">page</a>

必须是
<a href="http://google.com/page.html">page</a>

这是我的示例脚本,但我如何转换所有 url 和链接,例如 wget -k使用phantomjs?

最佳答案

您可以修改最终的 HTML,使其具有 <base>标签 - 这将使所有相对 URL 工作。在您的情况下,尝试输入 <base href="http://google.com/">紧跟在 <head> 之后在页面上。

关于phantomjs - 将phantom js处理的页面保存到带有绝对url的html文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14553925/

相关文章:

phantomjs - phantomjs 会定期自动清除缓存吗?

selenium - headless 浏览器和抓取 - 解决方案

javascript - 无法通过 PhantomJs 抓取 url

html - 页面底部的额外空间

html - 绝对定位未正确对齐

javascript - CasperJs:单击循环中的链接以打开模式弹出窗口

node.js - Docker、Cent OS、PhantomJS 字体格式问题

html - 将父元素内的两个元素定位为相同高度

java - 如何在项目中找到绝对路径

input - style-position 设置为输入标签的绝对值。渲染过程中的 kendo-ui datepicker 对象