Java 在RSS描述元素中区分HTML/XHTML和纯文本
长版本: 熟悉RSS系列标准化噩梦的人可能知道 该RSS不会向您提供信息,例如“description”元素 只包含纯文本、html或xhtml 我目前使用ROME-API将各种RSS版本转换为Atom 1.0。 罗马API将很高兴 解析RSS,然后输出一个Atom提要。幸运的是,Atom能够声明摘要以包含文本、html或xhtml 例如。 RSS:Java 在RSS描述元素中区分HTML/XHTML和纯文本,java,html,rss,rome,atom-feed,Java,Html,Rss,Rome,Atom Feed,长版本: 熟悉RSS系列标准化噩梦的人可能知道 该RSS不会向您提供信息,例如“description”元素 只包含纯文本、html或xhtml 我目前使用ROME-API将各种RSS版本转换为Atom 1.0。 罗马API将很高兴 解析RSS,然后输出一个Atom提要。幸运的是,Atom能够声明摘要以包含文本、html或xhtml 例如。 RSS: http://www.schwarzwaelder-bote.de/wm?catId=79039&artId=14737088&;
http://www.schwarzwaelder-bote.de/wm?catId=79039&artId=14737088&;rss=true
分析:斯特拉恩和卡森的冬季赖特·勒切尔
img src=”http://www.schwarzwaelder-bote.de/cms_images/swol/dpa-InfoLine_rs-images/20100306/1192a_24128948.thumbnail.jpg“alt=”Schlagloch“title=”border=“0”&;nbsp&;nbsp&;nbsp;柏林(dpa)-施奈德·施奈德·贝弗里特(Von Schnee and Eis befreit)是德国的一个城市,也是德国的一个城市。。。。
变成:
原子:
分析:斯特拉恩和卡森的冬季赖特·勒切尔
http://www.schwarzwaelder-bote.de/wm?catId=79039&artId=14737088&;rss=true
img src=”http://www.schwarzwaelder-bote.de/cms_images/swol/dpa-InfoLine_rs-images/20100306/1192a_24128948.thumbnail.jpg“alt=”Schlagloch“title=”border=“0”&;国家统计局&;nbsp&;nbsp;柏林(dpa)-施奈德·施奈德·贝弗里特(Von Schnee and Eis befreit)是德国的一个城市,也是德国的一个城市。。。。
问题是type=“text”
告诉像firefox这样的提要阅读器将摘要内容呈现为文本-->您可以看到所有html源代码
Short-version:如何检测description元素的内容是(X)HTML,以便设置正确的类型属性?嘿,我的祖父以前读过那份报纸:) 检测HTML的一种非常原始的方法是从源代码中剥离任何标记(在PHP中,您可以使用
strip_tags()
)并查看结果是否与原始结果不同。关于RSS的混乱,您可能需要在html\u entity\u decode()
之前和之后运行两次,以便可靠地检测到实体编码和非编码标记
通常,这应该会产生一半可靠的结果,但随后我看到了ö:
<title>Analyse: Dem Mutigen geh<F6>rt die Urne</title>
分析:数字高程模型
这是什么样的编码方法?我以前从未见过这种情况。这当然会被(错误地)解释为HTML标记。这是原子特有的吗?嘿,我的爷爷以前读过那份报纸:)
检测HTML的一种非常原始的方法是从源代码中剥离任何标记(在PHP中,您可以使用strip_tags()
)并查看结果是否与原始结果不同。关于RSS的混乱,您可能需要在html\u entity\u decode()
之前和之后运行两次,以便可靠地检测到实体编码和非编码标记
通常,这应该会产生一半可靠的结果,但随后我看到了ö:
<title>Analyse: Dem Mutigen geh<F6>rt die Urne</title>
分析:数字高程模型
这是什么样的编码方法?我以前从未见过这种情况。这当然会被(错误地)解释为HTML标记。这是atom特有的吗?strip\u标记是原始的,它会吃掉任何稍微有点像标记的东西(例如,1对不起,以前从未见过像这样的“ö”编码。@er4什么服务器端语言(如果有的话)你能使用吗?编辑:啊,我忽略了Java
标记。你可以看看一些Java HTML剥离库,我仍然认为这是最好的方法。也许有一个要剥离的标记列表,从一个有效的HTML 4标记名列表中选取。这样就不会出现像编码奇怪的ö
这样的边缘情况。谢谢你,佩卡。我是科伦tly查看nekohtml和jtidy,看看他们是否能做到。好的。我无法使用这两种方法找到一个好的解决方案。因此,现在我只是在寻找实体,如果我找到了实体,它必须是html;-)strip_标记是原始的,并且会吃掉所有稍微类似于标记的东西(例如,1抱歉,以前从未见过像这样对“ö”进行编码。@er4什么服务器端语言(如果有的话)你能使用吗?编辑:啊,我忽略了Java
标记。你可以看看一些Java HTML剥离库,我仍然认为这是最好的方法。也许有一个要剥离的标记列表,从一个有效的HTML 4标记名列表中选取。这样就不会出现像编码奇怪的ö
这样的边缘情况。谢谢你,佩卡。我是科伦我正在仔细研究nekohtml和jtidy,看看他们是否能做到这一点。好的。我无法使用这两种方法中的任何一种找到一个好的解决方案。因此,现在我只是在寻找实体,如果我找到了实体,就必须是html;-)
<title>Analyse: Dem Mutigen geh<F6>rt die Urne</title>