delphi信息采集程序可以推广为网络爬虫程序.docVIP

delphi信息采集程序可以推广为网络爬虫程序.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下述为新闻采集程序,在理解了新闻采集程序的基础之上就可以做出网络爬虫程序了. 今天,我们讨论的是网站新闻采集程序的制作。所谓新闻采集程序,就是自动抓取网上信息,并保存到自己网站数据库的一种程序。现在很多大型网站都有自己的新闻采集系统,其中许多采集系统价值不菲。通过这篇文章,我希望大家都能自己做一个采集程序,来维护自己的网站。 为了便于理解,先阐述一下本文的新闻采集程序的一些基本信息。这里的新闻系统,是用delphi实现,并将采集到的数据保存到本地access数据库。所以,这将是一个基与桌面的采集程序,而不是类似“动易采集”的基于浏览器。个人认为,基于桌面的采集系统,更容易实现强大的功能,有更高的稳定和安全性能。而经过扩展,大家完全可以把这个例子做成可以访问远程数据库的大型采集系统。 在说如何制作采集程序之前,我们先来定义一个本地access数据库,用来存取采集到的信息。这个数据库只有一个表,表名”T_Article”,该表有ArticleID、ClassID、Title、Keyword、CopyFrom、Content六个字段,分别代表新闻的编号、类别编号、标题、关键字、出处、内容。 首先,所谓采集,第一步当然是要能抓取信息,并且是能按照用户的要求,从网上抓取相关信息。这里假设我们要抓取 /article/69/69929.shtm 的文章,加到自己网站的“delphi技术”这么一个栏目。首先要做的,是读取 /article/69/69929.shtm 上的文章列表,然后通过列表索引,逐篇将文章正文内容读到我们的网站数据库。接下来将是关键,如何采集 /article/69/69929.shtm 上的文章列表。这里分为两步,一、利用delphi网络功能,读取69929.shtm的HTML源文件。二、通过分析69929.shtm的源文件,截取其中列表部分。第一步的实现,可以用delphi的indy控件族的idHTTP控件,该控件在indy Clients面板,该控件的具体使用,将在后面讲解,现在我们只要知道,给定一个URL地址,就能通过indy控件返回该URL的网页源代码。第二步的实现,则是简单的字符串处理了。 我们先来讨论第二步如何实现,打开/article/69/69929.shtm ,可以看到左边是“我的技术中心”“最新文档列表”等东西,这些和我们没有关系。右边则是一篇篇文章的列表,这些就是我们要的。如何截取列表里的内容呢?查看网页的源代码,CTRL+F查找“标题”,可以发现这样一段代码: !-- /左侧栏目 -- td width=5 valign=top/td td width=786 valign=top table width=100% height=57 border=0 align=center cellpadding=3 cellspacing=0 bordercolorlight=#000000 bordercolordark=#FFFFFF tr bgcolor=#006699 TD height=19 bfont color=#ffffff标题/font/b 对了,这就是列表的开始,那么列表结束的位置,显然是在这里: td nowrap=nowrap共 2475 篇文章 第 1/71 页/tdtd nowrap=nowrap align=Righta第一页/anbsp;| a上一页/anbsp;| a href=javascript:__doPostBack(ArticleList1$ArticleList1$PageNav1,2)下一页/anbsp;| a href=javascript:__doPostBack(ArticleList1$ArticleList1$PageNav1,71)末页/anbsp;| 跳转到select name onchange=javascript:__doPostBack(ArticleList1:ArticleList1:PageNav1,this.value) option selected=selected value=11/option 接下来,我们要做的只是利用字符串函数,截取这两段代码中间的部分——“文章列表”。具体函数,也将在后面详细讲解。得到文章列表后,我们还要进一步处理,截取出每篇文章的url地址,因为前边已经讲过,给定一个url,idHTTP控件能够返回网页代码。当我们返回文章列表里每篇文章的源代码的时候,就等于说把文章内容采集回来了,只要进一步分析处理,就能保存进本地数据库,从而完成采集工作。 那么如何取得文章列表里每篇文章的url呢?通过查看69929.shtm的源文件,我们发现列表里的每个超链接是这样的格式:a id=Art

文档评论(0)

书房 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档