什么是通过rss feed将html嵌入代码传递给php中的rss解析器的最佳方法?
-
02-07-2019 - |
题
我试图将flash视频的html嵌入代码放入rss feed
,然后由我的其他网站上的解析器(magpie)
解析。我应该如何在一侧对嵌入代码进行编码,然后在另一侧对其进行解码,以便将干净的html插入到接收服务器上的DB
中?
解决方案
由于RSS是XML,您可能需要查看CDATA,我认为CDATA在各种RSS规范中都有效。
<!> lt; summary <!> gt; <!> lt;![CDATA [Data Here]] <!> gt;
以下是w3schools条目: http://www.w3schools.com/XML/ xml_cdata.asp
其他提示
htmlencode / htmldecode应该可以解决问题。
我一直在使用htmlentities / html_entity_decode,但由于某种原因它不能与解析器一起使用。在正常测试中它可以工作,但是解析器总是返回没有<!> lt;的html代码; GT <!>; <!> QUOT;字符。
RSS是XML。它有非常具体的HTML编码规则。如果你正在生成它,我建议使用xml库来编写包含HTML的节点,以确保正确编码。
HTMLencode只会执行在HTML中嵌入数据所需的转义,XML规则更严格。
不要编写自己的RSS XML feed,而应考虑使用django.contrib.syndication
中的Django联合框架:
https://docs.djangoproject.com/en/dev/ref /了contrib /联合/
它还支持附件,这是嵌入图像或视频的RSS方式。
对于自定义标签,还有一个允许您更改XML的低级API: https://docs.djangoproject.com/烯的/ dev / REF /了contrib /联合/#的低级别的框架