创建 XML 新闻源





3.00/5 (1投票)
2002年7月30日
1分钟阅读

80004
本文档解释了如何在 ASP 页面中创建 XML 新闻源。
引言
创建 XML 新闻源是掌握 XML 实际应用的一个很好的方法。本教程来自 CodeToad.Com,将解释如何处理目前各种网站提供的 XML 提要,并将它们转换为可用的网页。我们将使用样式表和少量 ASP 代码来完成这项工作。
点击此处 查看最终新闻源页面的效果。
moreover.com 的完整 XML 新闻源列表可在 http://w.moreover.com/categories/category_list_xml.html%20target=_blank 找到。Amazon 联盟营销人员也可以选择以 XML 格式创建他们的链接,从而提高搜索和产品展示的效果。
我们将使用 ASP 页面中的 xmlHTTP
对象来从生成 XML 的网站提供的 URL 中获取 XML。有关 xmlHttp
的更多信息,请参阅我的 XML HTTP 教程。
一旦我们获得了 XML,我们就会调用样式表来显示页面。
然后 ASP 页面看起来如下
<%
dim objHTTP , objXML , objXSL
set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
objHTTP.open "GET",
"http://p.moreover.com/cgi-local/page?c=Pop%20music%20reviews&o=xml",
false
objHTTP.send
set objXML = objHTTP.responseXML
set objXSL=Server.CreateObject("microsoft.xmldom")
objXSL.async=false
objXSL.load(Server.MapPath("style.xsl"))
if (objXSL.parseError.errorCode = 0) then
Response.Write(objXML.transformnode(objXSL))
else
Response.Write "Error: " & objXSL.parseError.reason
& "<br> URL:" & objXSL.url
end if
Set objHTTP = Nothing
Set objXML = Nothing
Set objXSL = Nothing
%>
我们引用了一个名为 style.xsl 的样式表。我们的 XSL 样式表循环遍历 XML 中的每个项目并显示记录。显然,您需要查看您拥有的 XML 并根据需要调整样式表,但这应该足以让您了解。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<head>
<TITLE>moreover...</TITLE>
</head>
<body BGCOLOR="ffffff">
<br/><br/>
<br/> br
<DIV ALIGN="center">
<TABLE BGCOLOR="ffffff" BORDER="0" CELLPADDING="4"
CELLSPACING="0" WIDTH="100%">
<xsl:for-each select="moreovernews/article">
<TR VALIGN="middle">
<TD ALIGN="left" BGCOLOR="ffffff">
<B>
<A>
<xsl:attribute name="HREF">
<xsl:value-of select="url"/>
</xsl:attribute>
<xsl:attribute name="TARGET">
_blank
</xsl:attribute>
<FONT FACE="Verdana, Arial,Helvetica,
sans-serif" SIZE="-1" COLOR="000000">
<xsl:value-of select="headline_text"/>
</FONT>
</A>
</B>
<BR/>
<A>
<xsl:attribute name="HREF">
<xsl:value-of select="document_url"/>
</xsl:attribute>
<xsl:attribute name="TARGET">
_blank
</xsl:attribute>
<FONT FACE="Verdana, Arial,Helvetica,
sans-serif" SIZE="-2" COLOR="666666">
<xsl:value-of select="source"/>
</FONT>
</A>
<A>
<xsl:attribute name="HREF">
<xsl:value-of select="access_registration"/>
</xsl:attribute>
<xsl:attribute name="TARGET">
_blank
</xsl:attribute>
<FONT FACE="Verdana, Arial,Helvetica,
sans-serif" SIZE="-2" COLOR="666666">
<xsl:value-of select="access_status"/>
</FONT>
</A>
<FONT FACE="Verdana, Arial,Helvetica,
sans-serif" SIZE="-2" COLOR="666666">
<xsl:value-of select="harvest_time"/> GMT
</FONT>
</TD>
</TR>
</xsl:for-each>
</TABLE>
</DIV>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
这是生成的页面看起来的样子。请记住,我们指向原始 ASP 页面来完成工作并提取 XML 和样式表。我们的新闻源提取了流行音乐新闻,因此 点击此处获取最新的流行音乐新闻。