如何采集静态文章系统

目前网站基本上都生成静态的了,对于那些技术不是很高深的小偷来说,去偷一个文件名是以时间加随机数来命名的

文章系统,有点困难,而目前的大多数静态的系统都是以这样的方式命名的,这个不像有asp?id=1 to asp?id=100这样好

这个命名是没规律的,那么,这种文章系统怎么样采呢,以下就以自已的站www.asp315.com这例来写一篇关于采集静态文

章系统的教程吧!

  首先,我们打开www.asp315.com你会发现教程很多,我们随便点一个进去吧,就点JSP教程吧,里面还分了子类,这个不管

我们就采这一个大类,http://www.asp315.com/artical/2/1.htm,看看每一篇文章的名称,基本上是没规律,直接偷是没戏了

,只能转着弯偷啦,看到这个分类页下面有下一页,看看这些页面的规律,会发现是以1.htm,2.htm命名的,这样就好办多了

点一下最后一页,141.htm,这些页面都是一样的,整个站的分类页都是一样的,只要搞定了这一页,那么,文章页的文件名就知道了

只要记下了文件名,那么,偷起来就容易多了,在这里我只讲怎么样偷到这些文件名,不去讲具体的采集某个页面,因为那个太简单了

不用我说,大家都会!

  首页,那个读取远程的函数是不能少啦,以下我贴出来

Function getHTTPPage(Path)

t = GetBody(Path)

getHTTPPage=BytesToBstr(t,"gb2312")

End function

Function GetBody(url)
on error resume next
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "get", url, False, "", ""
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
然后我们先写一个最简单的程序来先,一步一步的来,手把手的教,(呵,废话说多了*.*)
把上面的代码命名为get.asp吧
再一个页面代码就叫getfilename.asp吧.代码如下:
<!--#include file="get.asp"-->
<%
response.write gethttppage("http://www.asp315.com/artical/2/1.htm")
%>
呵,getfilename.asp完成了,当然,这个是最简单的照搬啦,我们要一步一步的来改,来完善,
远行那个当代码,你会看到和那个页面基本上一的页面,当然,有些图片显示不了!
然后我们分析这个页面,首页,点右键,查看源代码找到这一行
<td width="40" height="20" align="center" bgcolor="#F6F6F6">人气</td>
当然,我们不要这么多,光人气二字都可以,但是为了保险,我们还是多要点,
这个是那些文件标题开始的地方,那么我们再找到结束的地方,
<td width="490" align="center">页数
呵,这些代码找到了,这个多一点少一点没事,我们代码要一步一步完善的,
然后我们将getfilename.asp改成
<!--#include file="get.asp"-->
<%
dim dj,l1,l2
dj=gethttppage("http://www.asp315.com/artical/2/1.htm")
l1=instr(dj,"<td width=""40"" height=""20"" align=""center"" bgcolor=""#F6F6F6"">人气</td>")
l2=instr(l1,dj,"<td width=""490"" align=""center"">页数")
dj1=mid(dj,l1,l2-l1)
response.write dj1
%>
再去运行这个文件,看一看,
你会发现东西少了好多,呵,也简单多了,那么,我们再找去规律来吧,一样上查看源代码,
然后你会发现每一条都是一个<tr></tr>标签组成的,这就好办多了,
djmore=split(dj1,"<tr>")
记住,仔细查看,你会发现多了几个<tr>,
那就把第一个和最后二个去掉,变成这样的了
我们来循环

response.write dj1换成
djmore=split(dj1,"<tr>")
for i=1 to ubound(djmore)-2
response.write djmore(i)
next
这样就会把每一行都分出来了,分成了以下这样的
  <td width="474" height="20" bgcolor="#FFFFFF"><img src="../../images/article_elite.gif"> <a href="../../news/31/200572111233207984.htm" target="_blank" title="CSS语法手册(一)字体属性">CSS语法手册(一)字体属性</a></td>
    <td width="80" height="20" align="center" bgcolor="#FFFFFF">2005-7-21</td>
    <td width="40" height="20" align="center" bgcolor="#FFFFFF"><script src="../../showcount.asp?id=18152"></script></td>
  </tr>
现在只要分析这一段就简单多了,
我们再来针对djmore(i)这数组中的一项来写一个代码,
l3=instr(djmore(i),"<a href=")
l4=instr(l3,djmore(i),""" target=""_blank""")
url=mid(djmore(i),l3,l4-l3)
response.wrie url&"<br>"

这里是为了方便才写成这样的,
把以上这段代替前面的
response.write djmore(i)
这里加<BR>是为了换行,好看点,然后你看到了URL好像多了点东西,这个我们就要做一些处理了,把
url=mid(djmore(i),l3,l4-l3)变成
url=mid(djmore(i),l3+len("<a href=")+1,l4-l3-len("<a href=")-1)
呵,没问题了,再运行时就剩下地址了,
呵,是吧,这只是每一个页的,要全部的,你只要修改一下
dj=gethttppage("http://www.asp315.com/artical/2/1.htm")改成
for ii=1 to 141
geturl="

时间: 2024-10-30 07:42:37

如何采集静态文章系统的相关文章

如何采集静态文章系统_小偷/采集

目前网站基本上都生成静态的了,对于那些技术不是很高深的小偷来说,去偷一个文件名是以时间加随机数来命名的文章系统,有点困难,而目前的大多数静态的系统都是以这样的方式命名的,这个不像有asp?id=1 to asp?id=100这样好这个命名是没规律的,那么,这种文章系统怎么样采呢,以下就以自已的站www.asp315.com这例来写一篇关于采集静态文章系统的教程吧!  首先,我们打开www.asp315.com你会发现教程很多,我们随便点一个进去吧,就点JSP教程吧,里面还分了子类,这个不管我们就

PHP文章系统里面如何同时删除掉生成的HTML静态页面

摘要: 添加文章时生成HTML静态的页面,但如果要删除文章,添加文章时生成的HTML静态页面也应该同时删除掉,否则就成了冗余文件,所以我们应该在删除没用的文章时,同时删除掉已生成的 添加文章时生成HTML静态的页面,但如果要删除文章,添加文章时生成的HTML静态页面也应该同时删除掉,否则就成了冗余文件,所以我们应该在删除没用的文章时,同时删除掉已生成的HTML静态页面,下面来看看PHP文章系统里面如何同时删除掉生成的HTML静态页面,这里只是一个简单的原理系统,可以作为一个参考,更成熟系统可以参

浅谈带文章系统的淘客站内部优化策略

2011年注定是淘宝客疯狂的一年,也是大浪淘沙的一年,众多没有一定优化推广经验的淘客站长必然被拍死在沙滩上,曾经风靡一时的单页面不再是首选.网络上大抵有这么一条金律:凡是公开的策略基本上是赚不到钱的.作为淘客站长,必须要明白这一点,才能通过网站赚到钱,这里不谈单页面的优化,不讲站外优化,只讲带有文章系统的淘客站如何进行站内优化,我们知道网站的内部结构好坏直接决定着收录量的多少,让我们开始今天的学习吧. 一.站内优化之导航篇 网站导航的清晰与否直接影响到用户体验,如果一个用户在你的网站进行三次点击

另一种显示文章系统的思路-1

显示 现在很多人用Access数据库实现文章显示系统,由于Access数据库本身的缺陷,用一个字段存放文章内容,我以为对于访问量大,文章数目多的网站,很容易产生错误,此举是极不明智的,经过实际比较,笔者得出另一种实现文章系统的方法,那就是采用Access+文本文件 的模式.其中Access数据库用来存每篇文章的一般信息,而文本文件用来存放具体文章内容.具体实现方法实现如下:先用Access建立一个数据库wzozg,里面只有一个表ozg,存放文章一般信息,字段如下:字段名 类型 含义wid 自动编

ASP文章系统解决方案

首先感谢V37斑竹对我的帮助,这个方案解决了显示"上一篇下一篇"和相关文章的问题, 贴出来让大家分享. 以前看到一个帖子讲用ID+1和ID-1的办法判断"上一篇下一篇", 在用的过程中发现一个问题:当删除数据库中的一篇文章时,就会造成ID不连续, 如果用ID+1和ID-1来判断就会出现找不到记录的问题,在这个程序里, 通过查询大于当前ID的第一条记录来找出下一篇的ID, 查询小于当前ID的第一条记录来找出上一篇的ID,这样就算ID不连续也可以正常显示了. 至于相关文

如何在互联网上直接采集原创文章

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 原创,外链,内链被称为SEO的三大法宝,缺一不可.因为人的思维方式和知识的广度都是有限的,针对同一知识点进行反复的写作,原创性必然越来越差.所以三大法宝中,原创又被认为是最难的一个方面,而且成为越来越多的企业SEOer们关注的热点.利用采集进行伪原创是很多站长采用的方法,显然被采集的文章质量,是否被百度收录,直接关系着你的伪原创文章的质量.本

ASP文章系统解决方案实现上一页下一页第1/2页_ASP基础

首先感谢V37斑竹对我的帮助,这个方案解决了显示"上一篇下一篇"和相关文章的问题,贴出来让大家分享. 以前看到一个帖子讲用ID+1和ID-1的办法判断"上一篇下一篇",在用的过程中发现一个问题:当删除数据库中的一篇文章时,就会造成ID不连续,如果用ID+1和ID-1来判断就会出现找不到记录的问题,在这个程序里,通过查询大于当前ID的第一条记录来找出下一篇的ID,查询小于当前ID的第一条记录来找出上一篇的ID,这样就算ID不连续也可以正常显示了. 至于相关文章的显示则

PHP采集静态页面并把页面css,img,js保存的方法_php技巧

本文实例讲述了PHP采集静态页面并把页面css,img,js保存的方法.分享给大家供大家参考.具体分析如下: 这是一个可以获取网页的html代码以及css,js,font和img资源的小工具,主要用来快速获取模板,如果你来不及设计UI或者看到不错的模板,则可以使用这个工具来抓取网页和提取资源文件,提取的内容会按相对路径来保存资源,因此你不必担心资源文件的错误url导入. 首页 index.php,代码如下: 复制代码 代码如下: <!DOCTYPE html> <html> <

帝国cms文章系统和新闻系统的区别

新闻系统模型与文章系统模型的区别 文章系统内的文章内容部分是存放在"/d/txt/年份/月份"文件夹下了,并且是以php为后缀名的文件存放的.而新闻系统的新闻正文部分是直接存放在数据库中的! 1.新闻系统模型的文章内容是存放数据库的:而文章系统模型的文章内容是存放文本文件,而不是存数据库,对于数据量比较大的,推荐使用文章系统模型. 2.新闻系统模型支持内容搜索:而文章系统模型不支持内容搜索.