但自己现在还不会写ASP的采集入库程序。
不知有那位仁兄指点一下。
版主:多谢你的回复
可是我不知道怎么用!
版 主能否给一个完整示例。让我学习一下。
等下我把我改好的发出来,请您帮我看看错在那里!
<%
'声明取得目标信息的函数,通过XML组件进行实现。
Function GetURL(url)
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "GET", url, False
.Send
GetURL = bytes2bstr(.responsebody)
'对取得信息进行验证,如果信息长度小于100则说明截取失败
if len(.responsebody)<100 then
response.write "获取远程文件 <a href="&url&" target=_blank>"&url&"</a> 失败。"
response.end
end if
End With
Set Retrieval = Nothing
End Function
' 二进制转字符串,否则会出现乱码的!
function bytes2bstr(vin)
strreturn = ""
for i = 1 to lenb(vin)
thischarcode = ascb(midb(vin,i,1))
if thischarcode < &h80 then
strreturn = strreturn & chr(thischarcode)
else
nextcharcode = ascb(midb(vin,i+1,1))
strreturn = strreturn & chr(clng(thischarcode) * &h100 + cint(nextcharcode))
i = i + 1
end if
next
bytes2bstr = strreturn
end function
'声明截取的格式,从Start开始截取,到Last为结束
Function GetKey(HTML,Start,Last)
filearray=split(HTML,Start)
filearray2=split(filearray(1),Last)
GetKey=filearray2(0)
End Function
Dim Softid,Url,Html,Title,po
'获取要取页面的ID
SoftId=Request("Id")
If softID="" Then
softID=1
End If
Url="http://bailixia.com/Article/Class6/Class7/200511/2928.html"
Html = GetURL(Url)
'以截取百里峡网站为例子
Title = GetKey(Html,"<title>","</title>")
po = ?????
'打开数据库,准备入库
dim connstr,conn,rs,sql
connstr="DBQ="+server.mappath("db1.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
conn.execute("insert into news (title,po) values('"&Title&"','"&po&"')")
set conn=nothing
Response.Write"采集完毕!"
%>
以上的TITLE是采集的标题,入库到了title字段了。
但我现在想加一个对内容的采集入到po字段
Title = GetKey(Html,"<title>","</title>")
po = 这里要怎么写才可以取得页面内容的值呢?
还有就是我想采这个页面的所有文章。那么我要怎么做?
内容只需要用
po= GetKey(Html,"<script language="javascript" src="/AD/200509/1.js"></script>","</p><p align='center'><font color='red'><b>[1]</b></font></p>")
就能得到
[此贴子已经被作者于2005-11-11 9:10:26编辑过]
可是有的东西手工添加也实在是麻烦。因为我时间有限!。所以这也是没有办法的办法了。