适合所有网站的rss和xml聚合功能asp代码

来源:asp之家 时间:2011-04-06 11:19:00 

rss.asp格式的
下面代码保存为rss.asp

代码如下:


<!--#include file="conn.asp"--> 
<% 
strURL = "http://" & request.servervariables("server_name") & _ 
left(request.servervariables("script_name"),len(request.servervariables("SCRIPT_NAME"))-len("/rss.asp")) //中的/rss.asp为你的该文件名 

sql="select top 100 * from [表名] order by id desc" //根据自己实际修改,top 100 为最新100条,自己修改,同时可以增加查询条件,如where xxx=1.... 
set rs=server.createobject("adodb.recordset") 
rs.open sql,conn,1,1 
response.contenttype="text/xml" 
response.write "<?xml version=""1.0"" encoding=""gb2312"" ?>" & vbcrlf 
response.write "<rss version=""2.0"">" & vbcrlf 
response.write "<channel>" & vbcrlf 
response.write "<title>xxx.com RSS feed</title>" & vbcrlf 
response.write "<link>" & strURL & "</link>" & vbcrlf 
response.write "<language>zh-cn</language>" & vbcrlf 
response.write "<copyright>An RSS feed for xxx.comcopyright>" & vbcrlf 
while not rs.eof 
response.write "<item>" & vbcrlf 
response.write "<title><![CDATA[" & rs("title") & "]]></title>" & vbcrlf 
response.write "<link>"&strURL"/xxxx.asp?Id="&rs("id")"</link>" & vbcrlf 
response.write "<description><![CDATA[" & rs("主题字段") & "<br />" & rs("内容字段") & "<br /><br />]]></description>" & vbcrlf 
response.write "<pubDate>" & return_RFC822_Date(rs("时间字段"),"GMT") & "</pubDate>" & vbcrlf 
response.write "</item>" & vbcrlf 
rs.movenext 
wend 
response.write "</channel>" & vbcrlf 
response.write "</rss>" & vbcrlf 
rs.close 
set rs=nothing 

Function return_RFC822_Date(byVal myDate, byVal TimeZone) 
Dim myDay, myDays, myMonth, myYear 
Dim myHours, myMinutes, mySeconds 

myDate = CDate(myDate) 
myDay = EnWeekDayName(myDate) 
myDays = Right("00" & Day(myDate),2) 
myMonth = EnMonthName(myDate) 
myYear = Year(myDate) 
myHours = Right("00" & Hour(myDate),2) 
myMinutes = Right("00" & Minute(myDate),2) 
mySeconds = Right("00" & Second(myDate),2) 


return_RFC822_Date = myDay", "& _ 
myDays" "& _ 
myMonth" "& _ 
myYear" "& _ 
myHours":"& _ 
myMinutes":"& _ 
mySeconds" "& _ 
" " & TimeZone 
End Function 

Function EnWeekDayName(InputDate) 
Dim Result 
Select Case WeekDay(InputDate,1) 
Case 1:Result="Sun" 
Case 2:Result="Mon" 
Case 3:Result="Tue" 
Case 4:Result="Wed" 
Case 5:Result="Thu" 
Case 6:Result="Fri" 
Case 7:Result="Sat" 
End Select 
EnWeekDayName = Result 
End Function 

Function EnMonthName(InputDate) 
Dim Result 
Select Case Month(InputDate) 
Case 1:Result="Jan" 
Case 2:Result="Feb" 
Case 3:Result="Mar" 
Case 4:Result="Apr" 
Case 5:Result="May" 
Case 6:Result="Jun" 
Case 7:Result="Jul" 
Case 8:Result="Aug" 
Case 9:Result="Sep" 
Case 10:Result="Oct" 
Case 11:Result="Nov" 
Case 12:Result="Dec" 
End Select 
EnMonthName = Result 
End Function 
%> 

rss.xml格式的

代码如下:


<!--#include file="conn.asp"--> 
<% 
strURL = "http://" & request.servervariables("SERVER_NAME") & _ 
left(request.servervariables("SCRIPT_NAME"),len(request.servervariables("SCRIPT_NAME"))-len("/rss.asp")) 
dim foolcat,js 
set js = server.CreateObject("ADODB.RecordSet") 
sql = "select * from [表名] order by id asc" 
set js = conn.execute (sql) 

foolcat = foolcat + "<?xml version=""1.0"" encoding=""UTF-8"" ?>" 
foolcat = foolcat + "<rss version=""2.0"">" 
foolcat = foolcat + "<channel>" 
foolcat = foolcat + "<title>xxx.com XML feed</title>" 
foolcat = foolcat + "<link>" & strURL & "</link>" 
foolcat = foolcat + "<language>zh-cn</language>" 
foolcat = foolcat + "<copyright>An XML feed for xxx.com</copyright>" 
do until js.eof 
foolcat = foolcat + "<item>" 
foolcat = foolcat + "<title><![CDATA[" & rs("主题字段") & "]]></title>" 
foolcat = foolcat + "<description><![CDATA[" & rs("主题字段") & "<br />" & rs("内容字段") & "<br /><br />]]></description>" 
foolcat = foolcat + "<link>" & strURL & "/xxx.asp?Id="&rs("id字段")"</link>" 
foolcat = foolcat + "<pubDate>" & rs("时间字段") & "</pubDate>" 
foolcat = foolcat + "</item>" 
js.movenext 
loop 
js.close 
set js = nothing 
foolcat = foolcat + "</channel>" 
foolcat = foolcat + "</rss>" 
foolcat = "" + foolcat + "" 
foolcat = "" & foolcat & "" 
FolderPath = Server.MapPath("/") 
Set fso = Server.CreateObject("Scripting.FileSystemObject") 
Set fout = fso.CreateTextFile(FolderPath"\rss.xml") 
fout.writeLine foolcat 
fout.close 
set fout = nothing 
conn.close 
set conn = nothing 
%> 

标签:rss,xml,聚合,asp
0
投稿

猜你喜欢

  • SQL Server的怪辟:异常与孤立事务

    2009-09-24 14:11:00
  • ASP获取远程文件大小信息(通过header头信息)

    2010-03-11 21:25:00
  • HTML,CSS和JavaScript速查表

    2010-09-16 13:02:00
  • 自己写的一个PJBlog中可以双击输入验证码的修改

    2009-05-17 10:51:00
  • asp如何显示全部的环境变量?

    2010-06-08 09:34:00
  • 确定能够释放空间的SQL Server数据库文件的脚本

    2010-07-31 12:36:00
  • 巧用正则表达式获取新闻中图片地址

    2010-07-17 13:09:00
  • 为什么Access数据库的精髓不在VBA之中

    2008-11-28 16:45:00
  • firefox 2正则表达式

    2008-08-25 19:15:00
  • SQL中Groupby和Having的使用方法

    2008-12-29 13:54:00
  • asp如何用WSH获取机器的IP配置信息?

    2010-06-13 14:39:00
  • CSS中expression的用法

    2008-09-11 14:18:00
  • Quickwork For Asp -实战之后台管理

    2009-12-31 19:13:00
  • 仅允许指定的机器连接SQL Server服务器

    2010-07-22 19:54:00
  • 30步检查SQL Server安全列表

    2008-12-18 14:28:00
  • 网页打开速度的心理学

    2009-03-26 13:18:00
  • 瞬间的设计(四)【碳酸饮料会】

    2009-12-23 13:56:00
  • Oracle数据库的十种重新启动步骤

    2012-07-21 14:58:25
  • 你是真正的用户体验设计者吗? Ⅵ

    2008-04-19 18:23:00
  • 白鸦:贪守米缸者,饿死灶台

    2009-02-23 13:03:00
  • asp之家 网络编程 m.aspxhome.com