现在写的代码只支持RSS2.0,我用socket取得响应内容.有什么方法能取得响应的内容是
RSS1
RSS2
ATOM
RDF
如果解析标签的话太耗时,如果查看namespace的话有好多网站生成的feed,namespace都不写有作过的同学指点一下RSS命名空间Atom

解决方案 »

  1.   


    我会用一个方法或函数分析目标feed的响应。知道是atom或rss2,其中的一个,然后交由相应的类来处理item或entry
      

  2.   

    RSS 均有版本声明的标签既然你分别有相应的处理类,那么你想讨论的又是什么呢?你说你用socket取得响应内容,那么就应视为流方式了
    可以用内置的xml解析函数(xml_xxxx)来解析,不需要分别写处理类。扩展起来也方便
      

  3.   

    既然你分别有相应的处理类,那么你想讨论的又是什么呢?
    re:
    第一步:知道是rss2或atom,我问的是这个第二步: 如果是rss2 ,委托rss2的处理类
            如果是atom ,委托atom的处理类第三步: 第二步会生成一个我写的标准类实例数组,加以处理...
      

  4.   

    可以用内置的xml解析函数(xml_xxxx)来解析,不需要分别写处理类。扩展起来也方便
    re:我不是采过来就显示出来,我还要按我的标准写到数据库中.所以需要不同的处理类找到我需要的内容
      

  5.   

    feed 节点包含 xmlns 属性 atom 字样
    rss 节点的 version 属性指示版本号
    rdf 命名空间标识 RDF只要你不是使用集成的XML处理类(DOMDocument、SimpleXML)处理起来还是很简单的,否则需要做探索(可能旭阳多次加载原始数据)
    而xml解析函数只需要一次扫描(尤其是对于你的这种只抽取指定信息的应用)
      

  6.   

    atom :xmlns="http://www.w3.org/2005/Atom"
    rdf :  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    rss2 : xmlns:dc="http://purl.org/dc/elements/1.1/"如果都写xmlns也容易判断,就是有很多网站的rss2 都不写xmlns.这点太烦人
      

  7.   

    这是 ZendFramework 提供的一些格式(在 tests/Zend/Feed/_files 中,应该是比较全的)
    <rss version="0.92">
    <rss version="2.0" ...
    <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-s...
    <atom:entry xmlns:atom="http://www.w3.org/2005/Atom">
    <feed xmlns="http://www.w3.org/2005/Atom">
      

  8.   

    tests/Zend/Feed/_files
    re:
    这个在哪可以访问,可以给个连接吗
      

  9.   

    既然是做 php 的,尽管不用,但也总是会下一个 ZendFramework 框架看看的吧?
    我就下载有很多框架,有比较才能有鉴别
      

  10.   

    我有一个疑惑如果同时存在rdf和rss的namespace哪光从namespace判断不准呀:
    示例<?xml version='1.0' encoding='UTF-8'?>
    <?xml-stylesheet type='text/xsl' href='http://cnbeta.feedsportal.com/xsl/eng/rss.xsl'?>
    <rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" 
         xmlns:dc="http://purl.org/dc/elements/1.1/" 
         xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" 
         xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" version="2.0">
    <channel>

    <?xml version="1.0" encoding="utf-8"?><rdf:RDF
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:dc="http://purl.org/dc/elements/1.1/"
      xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
      xmlns:admin="http://webns.net/mvcb/"
      xmlns:cc="http://web.resource.org/cc/"
      xmlns="http://purl.org/rss/1.0/"><channel rdf:about="http://www.w3.org/">