当前位置: 首页 > 图文教程 > 网络编程 > ASP > atom2rss.asp

ASP
如何善用Response.Buffer增进浏览速度?
利用 Meta Tag 来增加文件属性
要如何使用 ASP Error 组件?
Server.Execute和#include相异之处
ASP中文本文件与数据库文件的数据交换
如何用ASP建立图表
如何在ASP中通过ODBC调用Excel中的数据
不刷新页面改变下拉菜单内容
使用ASP重启服务器
用模板建立动态ASP页
如何用ASP将一大段文字中的HTML的标识去掉
让使用者可以看到你的ASP的原代码
用ASP实现在特定的时段或对特定访问者开放
在ASP中判断SQL语句是否执行成功
直接显示Monday等星期的ASP语句
LINE 的计数器源程序(附源代码)
使用asp+中的若干问题及解决方案
ASP实现多语言支持
Session对象在各浏览器中的有效范围
SQL Server如何解决加密问题?

ASP 中的 atom2rss.asp


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 116 ::
收藏到网摘: n/a

复制代码 代码如下:

<%
' atom2rss.asp
' Author: Francesco Passantino
' Email: [email protected]
' Blog: www.iteam5.net/blog
' Start date: 17 Sep 2004

Sub atom2rss(URL)
Set objXML = Server.CreateObject("msxml2.DOMDocument.3.0")
objXML.async = false
objXML.setProperty "ServerHTTPRequest", True
objXML.validateOnParse = true
objXML.preserveWhiteSpace = false
If Not objXML.Load(URL) Then
Response.write "<P>ERROR<br>code: " & _
objXML.parseError.errorCode & _
"<br>Linea/Col: " & _
objXML.parseError.line & "/" & _
objXML.parseError.linepos & "</P>"
Else
rsstitle="iteam5.net/blog"
rssdescription="Blog sulle novit?del settore Information & Communication Technologies"
rsslink="http://www.iteam5.net/blog"
rsslanguage="it"
xml= "<?xml version=""1.0"" encoding=""UTF-8""?><rss version=""0.91""><channel><title>"&server.htmlencode(rsstitle)&"</title><description>"&server.htmlencode(rssdescription)&"</description><link>"&server.htmlencode(rsslink)&"</link><language>"&server.htmlencode(rsslanguage)&"</language>"
Set objNodeList = objXML.getElementsByTagName("entry")
For Each objNode In objNodeList
For Each objNode2 In objNode.childNodes
Select Case objNode2.nodeName
Case "issued"
strdate= left(objNode2.firstChild.nodevalue,10)
Case "link"
strURL = objNode2.GetAttribute("href")
Case "title"
strTitle = objNode2.firstChild.nodevalue
'instead of Case "content"
Case "summary"
strDescription = objNode2.firstChild.data
For Each objNode3 In objNode2.childNodes
Select Case objNode3.nodeName
Case "div"
StrDescription = objNode3.text
For Each objNode4 In objNode3.childNodes
Select Case objNode4.nodeName
Case "a"
linkable=objNode4.firstChild.text
htmlink=" <a href='"& _
objNode4.GetAttribute("href")&"'>"& _
linkable&"</a>"
StrDescription = replace(StrDescription,linkable,htmlink)
end select
next
end select
next
End Select
Next
xml= xml & "<item>"
xml=xml & "<title><![CDATA[" & server.htmlencode(strTitle) & "]]></title>"
xml=xml & "<description><![CDATA[" & server.htmlencode(strDescription) & "]]></description>"
xml=xml & "<link><![CDATA[" & server.htmlencode(strURL) & "]]></link></item>"
strTitle = ""
strURL = ""
strDescription = ""
Next
xml = xml & "</channel></rss>"
response.ContentType = "text/xml"
response.write xml
set objNodeList = Nothing
End if
End sub
call atom2rss("http://www.iteam5.net/blog/feed.xml")
%>