在大多数情况下,上网冲浪是件令人愉快的事情。但若是数百上千的超链接摆在你面前,而你又不得不一一点击这些链接、进入相应的网页、手工筛选出每页里你需要的信息、最后再将这些信息编进数据库中、....,你将做何感想?如果每天都从事这种繁杂、枯燥的工作会不会让你发疯?
“自动上网机器人”或许可救你出“苦海”:你可以喝着咖啡、听着音乐、看着“机器人”辛勤地替你工作,那感觉是不是棒极了!
本文结合实例详尽讨论了用VB实现“上网机器人”的技术细节。我们知道,搜集和下载资料是人们使用互联网的最主要的目的之一,但有些信息资源过于庞大,用手工摘取的方法是困难的或根本就是行不通的。例如,你需要搜集欧洲进口机械设备的公司名录以便给他们发信邀请其参加博览会,在网上找到这些信息并不难,但出于数据安全等方面的考虑,几乎所有提供类似信息的网站都没有提供直接下载数据的功能。
要想搜集齐想要的数据,唯一可用的方法就是一页一页地浏览每个公司的信息页,摘取其中有用的数据并存入数据库。但当公司总数超过数千时,巨大的工作量会让任何人望而却步!其实,这浩大的工作完全可以由程序来完成,因为这些任务完全是机械的重复性工作。而且,用程序完成比用手工要快得多。本文涉及的技术细节是通用的,即对实例程序稍加修改就可完成任何“自动上网冲浪”任务。
自动拨号上网、自动处理中途掉线、任务完成后自动挂断,这些都是“上网机器人”的最基本的功能之一。它还能给你带来明显的经济回报:如果你让“机器人”在晚间至凌晨的上网费优惠期内拨号上网去自动冲浪,那真可称得上是典型的“一石三鸟”----你睡觉、它工作、还省钱!有关这方面的细节将在本文的第三部分里讨论。该部分提供了实现上述各功能的若干方法,并比较了这些方法各自的优劣。
本文的第一和第二部分分别以两个实例讨论了自动浏览的技术细节:在网页上的输入区内自动填入数据以便完成诸如用户登录等的操作、自动更新CheckBox、自动选择下拉式列表(ComboBox)的值、自动点击网页上的按钮、从网页上精确提取有用的数据并存盘、将网页上二维表(Table)内的数据一一提取出来并转换且存储成可直接导入数据库或 Excel的格式,以及控制浏览进程的技巧等等。