phantomJS区域截图只需要指定截图的上,左的起始位置,以及截图的宽高即可。
文本的处理,只需要在page.evaluate()函数中,通过dom选择器,选择到需要输出的文字内容即可,同时也可以写入本地文件中。
以csdn博客首页为例,来进行一个简单的截图和文本提取,比如需要首页的第一篇博客的截图和标题,代码如下:
var page = require('webpage').create();
var fs = require('fs');
//要打印的url地址
var address = 'http://blog.youkuaiyun.com/';
//存储文件路径和名称
var outputPng = './csdn/img.png';
var outputTxt = './csdn/data.txt'
//设置长宽
page.viewportSize = { width: 1280, height: 800 };
page.open(address, function(status) {
if(status !== 'success') {
console.log('Unable to load the address!');
phantom.exit();
} else {
//截图的偏移和宽高
page.clipRect = {
top: 186,
left: 101,
width: 855,
height: 207
};
text = page.evaluate(function() {
var title = document.getElementsByClassName('blog_list_wrap'