读书人

AutoIt3采摘网页中JS生成的数据

发布时间: 2012-10-29 10:03:53 作者: rapoo

AutoIt3采集网页中JS生成的数据

在做了一年多的网页数据采集之后,中途停了几个月,今天经理交代一个任务,采集http://www.365rili.com/huangliQuery.html 中2011年全年的农历日期,例如 2011年1月1日 是“农历11月廿七 庚寅年 戊子月 丙辰日”。开始以为可以直接使用自编的webpage API来采集,但分析源代码之后发现,里面的数据全部是有JS动态生成的,对于目前的网页解析类库是很难获取到该网页的数据,就算使用htmlutil API,启动js引擎,模拟鼠标事件,这样也很难采集到该网页的数据。

因为按键精灵软件中有个网页分析的工具“网页按键精灵”可以分析网页加载后的源码,和 Autoit3能够操作IE浏览器,所以也能很好的采集到JS生成的数据。一下是我采集该网页JS数据的准备和源码。

准备是:window系统,ie浏览器,网页按键精灵,autoit3 有这四个部分就可以通过编写类vb代码,在autoit上运行。就能在控制台打印出采集到的“农历日期”信息。
源代码:




注:
(1)源代码只能在window平台上运行,并且必须安装ie浏览器。
(2)网页按键精灵是按键精灵的一个子软件,这里用于分析加载后的网页,如定位 没有设定id 和 name 属性的标签,只要点击 网页按键精灵 上的网页分析和按下F9就可以开始分析网页,能很好知道每个标签在该网页中的序号。
(3)autoit3程序能发不成exe文件,在window平台运行。
(4)autoit3和按键精灵都是一类软件,只是各有偏重,autoit偏重办公的自动化,按键精灵偏重游戏方面自动化。
(5)autoit3的功能很强大,我只是专注其数据采集方面的应用。

读书人网 >JavaScript

热点推荐