代码之家  ›  专栏  ›  技术社区  ›  Tyler Carter

将RSS源导入MySQL数据库的最佳方法是什么

  •  9
  • Tyler Carter  · 技术社区  · 17 年前

    我试图获取几个RSS提要,并使用PHP将它们的内容放入MySQL数据库中。存储此内容后,我将在自己的页面上显示,并将内容合并到一个RSS提要中。(可能经过过滤)

    我以前没有处理过RSS提要,所以我想知道最好的框架/方法是。我读过基于DOM的解析,但听说它需要大量内存,有什么建议吗?

    4 回复  |  直到 17 年前
        1
  •  10
  •   Paul Dixon    17 年前

    Magpie 是一个合理的PHP RSS解析器。易于使用:

    require('rss_fetch.inc');
    $rss = fetch_rss($url);
    

    例如,这样的项目:

    <item rdf:about="http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257">
    <title>Weekly Peace Vigil</title>
    <link>http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257</link>
    <description>Wear a white ribbon</description>
    <dc:subject>Peace</dc:subject>
    <ev:startdate>2002-06-01T11:00:00</ev:startdate>
    <ev:location>Northampton, MA</ev:location>
    <ev:enddate>2002-06-01T12:00:00</ev:enddate>
    <ev:type>Protest</ev:type>
    </item>
    

    array(
        title => 'Weekly Peace Vigil',
        link => 'http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257',
        description => 'Wear a white ribbon',
        dc => array (
                subject => 'Peace'
            ),
        ev => array (
            startdate => '2002-06-01T11:00:00',
            enddate => '2002-06-01T12:00:00',
            type => 'Protest',
            location => 'Northampton, MA'
        )
    );
    

        2
  •  7
  •   Trystian Sky    16 年前

    SimplePie

    SimplePie 1.2甚至有数据库缓存,所以它应该有你想要做的一切。

    如果需要解析原始XML文件,请尝试使用XMLize

    -Trystian

        3
  •  6
  •   Daniel Iversen    15 年前

    对于一个非常简单的组合脚本,它只是端到端工作(解析RSS,插入数据库);

    http://code.google.com/p/rssingest/

        4
  •  0
  •   acrosman    17 年前

    有几个RSS解析库,包括 Magpie one in pear .

    我会选择一个解析器,然后用数据通过一个循环运行它,将其输入数据库。确保你弄清楚你想多久运行一次脚本,并考虑一下这是从cron运行的,还是只偶尔加载的页面的一部分。

    推荐文章