首页 > 编程 > ASP > 正文

ASP读取XML实例 优酷专辑采集程序 雷锋版

2024-05-04 11:08:38
字体:
来源:转载
供稿:网友
用asp获取指定专题的xml文件,然后读取xml文件的列表内容批量读取。
 
 
 

 

复制代码代码如下:

<title>雷锋|优酷-专辑 采集程序</title></head> 
<form name="form1" method="post" action="?action=add"> 
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="1" class="tableBorder"> 
<tr><th colspan="2" align="center" class="tableHeaderText"><<<< <font color=red>雷锋|优酷-专辑 采集程序</font> >>>></td></tr> 
<tr><td align="center"><a href="http://www.youku.com/playlist/" target="_blank">点我查找优酷专辑</a> 
</td> 
</tr> 
<tr><td bgcolor="#FFFFFF" align="center">专辑地址:<input name="maxz" type="text" value="<%=Request("maxz")%>" size="50"></td></tr> 
<tr><td align="center" bgcolor="#FFFFFF">例如专辑:http://www.youku.com/playlist_show/id_2344971.html</td></tr> 
<tr><td align="center" bgcolor="#FFFFFF"><input name="action" type="submit" id="action" value="提交分析该专辑地址"></td></tr> 
<tr><td align="center" bgcolor="#FFFFFF"></td></tr> 
</table> 
</form> 
<% 

if Request("action")="add" Then 
maxz=request.Form("maxz") 


v_urla=Split(maxz,"/id_")(1) 
v_urlb=Replace(v_urla,".html","") 
v_url="http://www.youku.com/playlist/rss/id/4014024"&v_urlb 
response.write "<div align=""center""><a href="&v_url&" target=_blank >当前专辑的XML:"&v_url&"</a></div>" 


Function GetPageContent(Url) 
Dim HTTPObj 
On Error Resume Next 
Set HTTPObj = Server.CreateObject("Microsoft.XMLHTTP") 
With HTTPObj 
.Open "Get", Url, False, "", "" 
.Send 
End With 
if HTTPObj.Readystate <> 4 then 
Set HTTPObj = Nothing 
GetPageContent = False 
Exit Function 
end if 
GetPageContent = replace(HTTPObj.responseText,"UTF-8","gb2312") 
Set HTTPObj = Nothing 
End Function 
strXML=GetPageContent(""&v_url&"") 
Set objXML = Server.CreateObject("Microsoft.XMLDOM") 
objXML.validateonparse = true 
objXML.async=false 
objXML.loadXML(strXML) 
set objRootElement = objXML.documentElement 
if not isObject(objRootElement) then 
Response.Write("no file loaded") 
else 
Set ChannelList=objXML.getElementsByTagName("item") 
if isnull(objXML.getElementsByTagName("item") ) then 
response.Write("读取失败") 
response.End() 
else 
Set Statistics=objXML.getElementsByTagName("title") 
set KeywordList=objXML.getElementsbytagname("lastBuildDate") 

'response.write "共有:"&keywordlist.length-1&"个频道" 
'response.write "<div align=""center""><h4>专辑名称:"&Statistics.item(0).text&"</h4>" 

v_name=REPLACE(Statistics.item(0).text,"优酷-专辑-","") 
zt_name=REPLACE(v_name,"的视频","") 
response.write "<div align=""center""><h4>专辑名称:<font color=red>"&zt_name&"</font></h4>" 
response.write "<center><form method=""post"" action=""../admin_add.asp"">" 
response.write "<input type=""hidden"" name=""db_channel"" value="&zt_name&" /><br>" 
response.write "<input type=""hidden"" name=""db_player"" value=""youku"" />" 
response.write "<textarea name=""db_url"" rows=""15"" cols=""100"">" 
for j=0 to ChannelList.length-1 
dim ibb 
response.write ""&ChannelList.item(j).childnodes(0).text&"$"&ChannelList.item(j).childnodes(8).text&chr(13)&"" 
ibb=ibb+1 
next 
response.write "</textarea><br /><input type=""submit"" value=""修改好了提交"" /></form></center>" 
response.write "<div align=""center""><h4>共提取到:<font color=red>"&ibb&"</font>个节目核实后提交</h4></div><br>" 
end if 
end if 
%> 
<%End If %> 

以上程序是以优酷的专辑列表为例做的一个 asp读取xml的实例! 
将以上代码保存为 XML.ASP 在IIS环境下运行就可以采集优酷专辑的数据了! 

其实上面的获取的是下面的xml文件 
复制代码代码如下:

<?xml version="1.0" encoding="utf-8"?> 
<!-- generator="Novajax Feed Writer" --> 
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"> 
<channel> 
<title>优酷-专辑-乾隆与香妃(27集)的视频</title> 
<description>优酷专辑乾隆与香妃(27集)的视频</description> 
<link>http://www.youku.com/playlist/</link> 
<lastBuildDate>Wed, 16 Dec 2009 13:34:06 +0800</lastBuildDate> 
<generator>Novajax Feed Writer</generator> 
<image> 
<url>http://www.youku.com/index/img/youkulogo.gif</url> 
<title>优酷网-中国第一视频网,提供视频播放,视频发布,视频搜索</title> 
<link>http://www.youku.com</link> 
<description>视频服务平台,提供视频播放,视频发布,视频搜索、视频分享</description> 
</image> 
<item> 
<title>乾隆与香妃01</title> 
<link>http://www.youku.com/v_show/id_XMTM4NTY5NDk2_rss.html</link> 
<description><![CDATA[<a href="http://www.youku.com/v_show/id_XMTM4NTY5NDk2_rss.html"><img src="http://g3.ykimg.com/0100641F464B178EA61F9F011876CAD9220D5D-8DAE-B491-FD1B-138F2DC75B23" border="0" width="120" height="90" vspace="4" hspace="4" /> <itunes:duration>43:42</itunes:duration> 
<itunes:keywords>尊龙,努尔比亚,恬妞,翁虹,阿依努尔,古海尔,谭非翎,瓦力伊,斯拉木江斯</itunes:keywords> 
<author>為傑沉淪</author> 
<comments>http://www.youku.com/v_show/id_XMTM4NTY5NDk2_rss.html#comments</comments> 
<pubDate>Wed, 16 Dec 2009 13:34:06 +0800</pubDate> 
<guid>34642374</guid> 
<enclosure type="application/x-shockwave-flash" url="http://player.youku.com/player.php/sid/34642374/v.swf"></enclosure> 
</item> 
<item> 
<title>乾隆与香妃02</title> 
<link>http://www.youku.com/v_show/id_XMTM4NTY5NTI4_rss.html</link> 
<description><![CDATA[<a href="http://www.youku.com/v_show/id_XMTM4NTY5NTI4_rss.html"><img src="http://g2.ykimg.com/0100641F464B178D99EF1F011876CA86F7B34B-B71C-2F1E-36B5-D0804F32AB42" border="0" width="120" height="90" vspace="4" hspace="4" /> <itunes:duration>41:26</itunes:duration> 
<itunes:keywords>尊龙,努尔比亚,恬妞,翁虹,阿依努尔,古海尔,谭非翎,瓦力伊,斯拉木江斯</itunes:keywords> 
<author>為傑沉淪</author> 
<comments>http://www.youku.com/v_show/id_XMTM4NTY5NTI4_rss.html#comments</comments> 
<pubDate>Wed, 16 Dec 2009 13:34:06 +0800</pubDate> 
<guid>34642382</guid> 
<enclosure type="application/x-shockwave-flash" url="http://player.youku.com/player.php/sid/34642382/v.swf"></enclosure> 
</item> 
</channel> 
</rss> 

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表