我rss2email用于将大量RSS源转换为邮件以便于使用.也就是说,我在使用它,因为它在一个可怕的方式打破了今天:在每次运行时,它只是给了我这个回溯:
Traceback (most recent call last):
File "/usr/share/rss2email/rss2email.py", line 740, in <module>
elif action == "list": list()
File "/usr/share/rss2email/rss2email.py", line 681, in list
feeds, feedfileObject = load(lock=0)
File "/usr/share/rss2email/rss2email.py", line 422, in load
feeds = pickle.load(feedfileObject)
TypeError: ("'str' object is not callable", 'sxOYAAuyzSx0WqN3BVPjE+6pgPU', ((2009, 3, 19, 1, 19, 31, 3, 78, 0), {}))
Run Code Online (Sandbox Code Playgroud)
我能够从这个回溯构建的唯一有用的事实是,保持其所有配置和运行时状态的文件~/.rss2email/feeds.dat以rss2email某种方式被破坏.显然,rss2email读取其状态并cPickle在每次运行时将其转储回来.
我甚'sxOYAAuyzSx0WqN3BVPjE+6pgPU'至在巨型(> 12MB)feeds.dat文件中找到了包含上述字符串的行.对于我未经训练的眼睛,转储似乎没有被截断或以其他方式损坏.
我可以尝试哪些方法来重建文件?
在Debian/unstable系统上,Python版本是2.5.4.
编辑
Peter Gibson和JF Sebastian建议直接从pickle文件加载,我之前尝试过.显然,需要一个Feed定义的类 …
我有什么方法可以通过RSS提要输入一些HTML吗?我意识到我正在弯曲科学规律,但我处于一些紧张的环境中.我有Wordpress设置所以我在一端发布了一些HTML/Inline CSS,而在另一个网站上,另一个网络团队将解析RSS.
有没有办法做到这一点?我疯了吗?如果没有,还有其他解决方案吗?
有没有免费的php/javascript库,这有助于将RSS源显示为html?
我目前正在用PHP构建一个新的在线Feed阅读器.我正在研究的功能之一是Feed自动发现.如果用户输入网站URL,脚本将检测到它不是Feed,并通过解析HTML以获取正确的标记来查找实际的Feed URL.
问题是,我目前正在检测URL是Feed还是网站的方式只能部分工作,我知道它不是最好的解决方案.现在我正在接受CURL响应并通过simplexml_load_string运行它,如果它无法解析它我将其视为一个网站.这是代码.
$xml = @simplexml_load_string( $site_found['content'] );
if( !$xml ) // this is a website, not a feed
{
// handle website
}
else
{
// parse feed
}
Run Code Online (Sandbox Code Playgroud)
显然,这并不理想.此外,当它运行到可以解析的HTML网站时,它会认为它是一个提要.
有关检测PHP中的feed或non-feed之间差异的好方法的任何建议?
谢谢,
我有一个项目,我需要提供一个服务,我们将为它添加约500个不同网站的RSS,我们希望这项服务从这些来源收集新的RSS源,并在我的SQL Server数据库中保存标题和URL.
如何确定最佳架构设计,以及哪些代码可以帮助我?
我们有一个RSS提要(或者我们应该有)通过wordpress,但它只是使用404页面上没有找到 - http://www.warrenaccess.co.uk/feed/rss2
我们已经尝试更改回默认主题并停用所有插件,看看我们是否可以找到问题,但它仍然无法正常工作.
有谁知道是什么原因引起的?
转换为JSON时,Google的Feed加载程序似乎忽略了属性.我正在使用jQuery通过AJAX获取feed.实际的RSS XML提要可以看到这里,并从AJAX调用的响应可以看出这里.
我需要访问标签的url属性<enclosure>,但都不会出现在响应中.
作为参考,我使用的代码是:
function getFeed(url) {
url = 'http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q='
+ encodeURIComponent(url);
$.ajax({
type: 'GET',
url: url,
dataType: 'jsonp',
cache: false,
success: function(d) { alert(JSON.stringify(d); },
error: function(s,x) { alert(x); }
});
}
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何获得XML响应,因为更改dataType : 'xml'会导致HTTP错误.JSON是首选.
有任何想法吗?
以下是rss feed的示例:
<item>
<title>Stem cells being made from blood</title>
<description>A patient's own blood has been used to make personalised stem cells, which doctors hope can be used to treat a range of diseases.</description>
<link>http://www.bbc.co.uk/news/health-20539835#sa-ns_mchannel=rss&ns_source=PublicRSS20-sa</link>
<guid isPermaLink="false">http://www.bbc.co.uk/news/health-20539835</guid>
<pubDate>Fri, 30 Nov 2012 00:45:53 GMT</pubDate>
<media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" width="66" height="49" url="http://news.bbcimg.co.uk/media/images/64469000/jpg/_64469170_c0147104-red_blood_cells%2C_artwork-spl.jpg"/>
<media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" width="144" height="81" url="http://news.bbcimg.co.uk/media/images/64469000/jpg/_64469171_c0147104-red_blood_cells%2C_artwork-spl.jpg"/>
Run Code Online (Sandbox Code Playgroud)
我需要在媒体中获取.jpg图片的网址:缩略图..我怎么能用xpath或xquery做到这一点?有人可以帮我吗?谢谢!
我是xsl的新手,我试图在wordpress rss feed的xml中找到一种隐藏或静音除了两个节点之外的方法,结构如下:
?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
>
<channel>
<title>Title</title>
<atom:link href="http://www.alink.com" rel="self" type="application/rss+xml" />
<link>http://www.alink.com</link>
<description>Just another WordPress site</description>
<lastBuildDate>Sun, 21 Apr 2013 22:13:55 +0000</lastBuildDate>
<language>en-US</language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<generator>http://wordpress.org/?v=3.5.1</generator>
<item>
<title>A Title</title>
<link>http://www.alink.com</link>
<comments>comments</comments>
<pubDate>Sun, 21 Apr 2013 22:13:55 +0000</pubDate>
<dc:creator>aUser</dc:creator>
<category><![CDATA[Uncategorized]]></category>
<guid isPermaLink="false">http://www5.uifoundation.org/news/?p=112</guid>
<description><![CDATA[Post[...]]]></description>
<content:encoded> Posted October 10, 2013 </content:encoded>
<wfw:commentRss>http://www.alink.com</wfw:commentRss>
<slash:comments>0</slash:comments>
</item>
Run Code Online (Sandbox Code Playgroud)
但我想在转换中只显示频道/标题和频道/链接.我正在考虑在所有节点上使用空模板的方法,就像这样
<xsl:template match="channel/* EXCEPTION channel/item/title | channel/item/link" />
Run Code Online (Sandbox Code Playgroud)
我不确定如何声明异常.如果有更好的方法,我也会对此持开放态度
我真的只是希望输出是一个无序的列表item/title,其值为item/link,其他一切都隐藏了.输出的一个例子是:
<ul>
<li>
<a href= …Run Code Online (Sandbox Code Playgroud) 我目前正在使用RoR 4创建一个网站,我希望在首页上包含我博客中的RSS.但是,目前我从博客中获取所有文章,而我只需要前3个.
我对rails非常陌生,我找不到任何关于如何做这些事情的指示.
我在控制器中的当前代码是:
def index
require 'rss'
@rss = RSS::Parser.parse(open('FEED_URL').read, false)
end
Run Code Online (Sandbox Code Playgroud)
我想我可以简单地@rss在解析完第三个元素之后剪切它,但在Ruby中我觉得有点脏.有没有更好的方法呢?
非常感谢你!