有许多网站和博客提供RSS提要,但另一方面也有许多网站和博客提供RSS提要。我想将这种类型的网页转换为RSS提要。
我发现了一些通过Google使用的解决方案,例如Feed43,Page2rss,Dapper等,但我想要一个可以执行此任务的开源项目或任何解释它的教程。< / p>
请给我建议,如果你能解释,欢迎你。
我更喜欢的语言是PHP。
答案 0 :(得分:6)
RSS没有什么神奇之处。我建议你阅读本教程,了解如何从头开始构建RSS源:
http://www.xul.fr/en-xml-rss.html
然后使用您的PHP技能从您的内容构建一个。可以通过搜索“html to rss converter”或其他任何方式在线找到通用的HTML-to-RSS scraper,但其中大多数将是托管解决方案,而且它们生成的RSS源不是那么好。一个好的RSS提要需要了解您正在联合的内容,而不仅仅是原始HTML。 IMHO。
答案 1 :(得分:2)
一般来说,对于这样的事情,不会有任何“一刀切”的解决方案。您必须检查要从中构建RSS源的博客的HTML结构,然后解析您感兴趣的内容,并将其粘贴到RSS源中。
以下是帮助您入门的一些PHP内容:
解析HTML:
了解RSS Feed:
要使用PHP构建它们,您可以再次使用DOMDocument或SimpleXML。另一种选择是,根据要转换为RSS的HTML格式,您可以创建一个XSLT样式表来对其进行转换。
答案 2 :(得分:1)
这个问题没有简单或具体的答案,但我会帮助你。
首先,您需要构建各种爬虫。通常,您希望这是多线程的,并在服务器的后台运行。这可能就像在服务器上分支PHP进程一样简单,但您可能会找到一种更有效的方法,具体取决于您期望的流量。
现在可能最好的方法是阅读DOM。请参阅http://php.net/manual/en/class.domdocument.php查找标题,并尝试将它们与下面的段落相关联。请注意,可能不到一半的网站(并且可能远没有那些没有饲料的网站)不会以有组织的方式构建他们的网站。但是,这是一个开始的地方。
您可以使用很多元素属性,例如alt文本。此外,您可能会发现很多站点使用特定模板,您可以编写代码直接处理。
您还应该阅读现有的Feed。如果一个站点有一个feed,就没有意义为它生成一个,对吗?使用SimplePie开始,但有一些你不喜欢的选择。 http://simplepie.org/
解析完页面后,您需要一个数据库后端来跟踪它并进行更改以及不进行更改。
从那里,您需要一些东西来生成Feed。有很多OOP类可以做到这一点。很多时候,我只是写自己的,但这取决于你。
答案 3 :(得分:0)
如果您使用简单symphony cms构建网站,那么是的,非常简单。见snippet of a tutorial。 Learn here