使用phantomjs进行网页抓取的实现代码

 更新时间:2014年09月29日 00:21:30   投稿:mdxy-dxy  
这篇文章主要介绍了使用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<l;i++){
d=d+c[i].title+'\n'
}

之后只需要让js代码在phantomjs里跑起来即可~

var page = require('webpage').create();
	page.open('http://www.todayonhistory.com/', 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<l;i++){
					d=d+c[i].title+'\n'
					}
						return d
				}))

		}
		phantom.exit();
	});

最终我们另存为catch.js,在dos里面执行一下,输出内容到txt文件(也可以用phantomjs的文件api来写)

相关文章

  • Openlayers显示瓦片网格信息的方法

    Openlayers显示瓦片网格信息的方法

    这篇文章主要为大家详细介绍了Openlayers显示瓦片网格信息,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • JavaScript控制两个列表框listbox左右交换数据的方法

    JavaScript控制两个列表框listbox左右交换数据的方法

    这篇文章主要介绍了JavaScript控制两个列表框listbox左右交换数据的方法,实例分析了javascript操作列表框listbox的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-03-03
  • Javascript Echarts空气质量地图效果详解

    Javascript Echarts空气质量地图效果详解

    这篇文章主要介绍了详解Javascript利用echarts画空气质量地图,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-10-10
  • bootstrap组件之导航组件使用方法

    bootstrap组件之导航组件使用方法

    Bootstrap 中的导航组件都依赖同一个 .nav 类和ul,状态类也是共用的。改变修饰类可以改变样式。接下来通过本文给大家介绍bootstrap 导航组件使用方法,一起看看吧
    2017-01-01
  • js与C#进行时间戳转换

    js与C#进行时间戳转换

    最近在做一个项目,需要JS时间戳转成C#里的时间,再把C#里的时间戳转成JS的时间,就仔细研究了下js与C#进行转换的注意要点,这里记录下来,有需要的小伙伴自己拿走。
    2014-11-11
  • js中symbol类型以及symbol的三大应用场景详解

    js中symbol类型以及symbol的三大应用场景详解

    Symbol是ES6新推出的一种基本类型,它表示独一无二的值,它可以接受一个字符串作为参数,带有相同参数的两个Symbol值不相等,这个参数只是表示Symbol值的描述而已,下面这篇文章主要给大家介绍了关于js中symbol类型以及symbol的三大应用场景,需要的朋友可以参考下
    2022-09-09
  • js实现模糊匹配功能

    js实现模糊匹配功能

    这篇文章主要为大家详细介绍了js实现模糊匹配功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • JavaScript中的方法调用详细介绍

    JavaScript中的方法调用详细介绍

    这篇文章主要介绍了JavaScript中的方法调用详细介绍,JavaScript中,如果function属于一个对象,那么通过对象来访问该function的行为称之为“方法调用”,需要的朋友可以参考下
    2014-12-12
  • JavaScript常用的3种弹出框(提示框 alert/确认框 confirm/输入框 prompt)

    JavaScript常用的3种弹出框(提示框 alert/确认框 confirm/输入框 prompt)

    三种弹框在系统中都是同步执行的,也就是说,三种弹框中的任一弹框弹出,代码都不在执行,直到点击确认或取消,关闭弹窗后,代码继续执行,本文通过实例代码给大家分享JS常用的3种弹出框,感兴趣的朋友一起看看吧
    2022-07-07
  • 微信小程序获取位置展示地图并标注信息的实例代码

    微信小程序获取位置展示地图并标注信息的实例代码

    这篇文章主要介绍了微信小程序获取位置展示地图并标注信息的实例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09

最新评论