admin 管理员组文章数量: 887016
使用phantomjs进行网页抓取的实现代码
phantomjs因为是无头浏览器可以跑js,所以同样可以跑dom节点,用来进行网页抓取是再好不过了。
比如我们要批量抓取网页 “历史上的今天” 的内容。网站
对dom结构的观察发现,我们只需要取到 .list li a的title值即可。因此我们利用高级选择器构建dom片段
var d= ''
var c = document.querySelectorAll('.list li a')
var l = c.length;
for(var i =0;i
d=d+c[i].title+'\n'
}
之后只需要让js代码在phantomjs里跑起来即可~
var page = require('webpage').create();
page.open('http://www.todayonhistory/', function (status) { //打开页面
if (status !== 'success') {
console.log('FAIL to load the address');
} else {
console.log(page.evaluate(function () {
var d= ''
var c = document.querySelectorAll('.list li a')
var l = c.length;
for(var i =0;i
d=d+c[i].title+'\n'
}
return d
}))
}
phantom.exit();
});
最终我们另存为catch.js,在dos里面执行一下,输出内容到txt文件(也可以用phantomjs的文件api来写)
相关阅读:
在CentOS系统上安装DNS服务器的教程
mac os x10.10系统如何批量修改文名
oracle中的trim函数使用介绍
js拆分字符串并将分割的数据放到数组中的方法
javascript获取系统当前时间的方法
AngularJS基础 ng-switch 指令简单示例
php jsonp单引号转义
学习JavaScript鼠标响应事件
单击某一段文字改写文本颜色
php实现图片添加水印功能
Linux安装配置MariaDB数据库全程详解
MySQL函数大全及用法示例分享
Win10能运行单片机吗?Win10系统不识别51单片机的教程
如何解决Win7电脑不能正常安装软件的情况?Win7电脑不能正常安装软件的解决方法
版权声明:本文标题:php无头浏览器采集教程,JavaScript_使用phantomjs进行网页抓取的实现代码,phantomjs因为是无头浏览器可以 - phpStudy... 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1729174589h1327111.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论