RSS feed 不输出全文?一样搞定你
流量就是金钱,所以有些网站很吝啬,RSS feed 只给你看几行字,要看全文?对不起,流量送俾我先。本文教你如何在 Google Reader 里面搞定这些铁公鸡,不是用 iframe 预览页面,而是只有正文,全文,图文。
您需要使用 Firefox 的用户脚本管理器 Greasemonkey, 它近日更新的 0.8 版已支持最新版本的 Firefox 3. 让 Google Reader 获取全文 feed 的脚本是 google reader full feed changer, 或者 直接安装它。装好之后,离完成就只剩最后一点点设置了:
以 新浪体育新闻 为例,打开一篇新浪上的原文,按 ctrl+u 查看页面源代码,发现正文部分是用 <div class=”artibody”> 标注的,那么修改一下刚才的脚本,该脚本通常位于 Firefox 配置文件夹下:
%appdata%\Mozilla\Firefox\Profiles\****
\gm_scripts\googlereaderfullfeedchan.user.js
编辑它,在第九行以下,添加一个 SITE_INFO:
{
url: 'http://(sports|rss).sina.com.cn',
xpath: '//div[@class="artibody"]',
charset: 'gb2312' //非必需
},
保存脚本文件,F5 刷新 Google Reader, 看看新浪的 feed 吧,已经是文首截图的样子了 😀 现在您知道了如何添加一个 SITE_INFO, 添加一下您需要看全文的 feed 信息,以后就省事喽。注意事项:
- 如果网站域名和 feed 域名不一样,需要把两个域名都写进去,比如:
url: 'http://(site.com|feed.feedsky.com)',
- class 和 id 都可以识别
- 如果出现乱码,在该网站页面源代码中搜索 charset, 设定进 SITE_INFO 中
- 目前该脚本还不能对付 cnBeta, 因为 cnBeta 的文章地址设置了一个跳转重定向。没关系,订阅 feeds.feedburner.com/cnbeta_full 就好了
好东西,收益了 😆
恩恩 收了
好东东~
非常不错诶
很强,非常强,收了。
好样的,就这样搞定那些吝啬的人 😉
这个太好了,尤其是针对CB的,哈哈!
老肥,很喜欢你的博客,能否交换个链接?呵呵,你的链接我已经做好。
Done 🙂
老肥对Greasemonkey的研究真是令人佩服。
呵呵。
使用鲜果的同学也有“鲜果Plus”可以用哦,也是一个Greasemonkey脚本,并且还可以配置关键字,只显示包含这些关键字的文章的全文。
支持cnbeta,而且可以显示cnbeta的热门评论。
也可以通过配置xpath来支持其他不提供全文的Feed。
感谢您的好脚本!已加入正文
论坛里的RSS如何输出全文?
按照文中的办法,看页面源码找找吧。。。没有一个通用的 xpath 啦
真的很不错呢,感谢博主:)
好东西啊
订阅了cnbeta的全文,感谢
这不就是原始的采集原理么- –
不过用了高级点的XPath
不一样的,原始的 RSS 获取只是去读一个现成的 xml, 不会访问原文内容。这个方法是尝试访问原文,寻找 xpath 所规定的字段
这不是采集原理,是啥- –
老肥懂粤语?~
一点点。。恺恺 参考一下我录的粤语歌吧,我也就会唱歌,不会讲 -_-
http://news.163.com/topnews/
这个是网易头条
我怎么弄不成啊
不至于这么笨吧
大肥可以帮忙做下吗?
我看了一下页面源码,应该是 id=”endText” 你试试看 🙂
很棒,不过不懂 xpath 怎么办呢?简单的可以照葫芦画瓢,复杂的就麻烦了。谁可以帮忙写看凯迪论坛的 xpath ?比如 http://club.cat898.com/newbbs/dispbbs.asp?boardid=8&id=2292721,我只要楼主的全文。
url: ‘http://(club|rss).cat898.com’,
xpath: ???,
charset: ‘GB2312’
晕,这个论坛我根本就没找到 feed 在哪里,header 里也没有
19楼的朋友不妨试试下面的xpath来显示凯迪论坛:
//table[@class=’tablebody2′][1]//td[1]/node()
貌似不错,看貌似太麻烦了,诶。。。。。
fisio,我用了这个脚本。这样设置,失败。
{
url: ‘http://www.infzm.com/rss/home/rss2.0.xml’,
xpath: ‘//div[@id=”content-context”]’,
charset: ‘utf-8’
}
url 部分我还测试过 http://www.infzm.com/ http://www.infzm.com/content/
都不行。我这样写对吗?
嗯,我试了一下,照你这么写是可以全文的,我 url 写的是 http://www.imfzm.com 只是部分文章不行,我打开这些文章,是要求登录的,所以不能获取全文。是不是你没有在 Google Reader 里选中文章?光刷新不会去加载的喔……
选中文章?怎么选中?
我不知道你哪里出了问题啊,我把你那两句放进脚本,可以全文的……于是猜你是不是犯了个低错误,要高亮一篇文章才开始加载全文喔
唉,从来没成功的人飘过。。。
奥巴马都当上总统了,外星人和老罗还没搞定 feed…
我个人觉得,其实要看全文不就是鼠标点击一下的事情吗?博主写的文章,他付出了劳动,如何显示feed由他来安排并不为过,要流量也是可以理解的。本文的方法是不是相对于动一动鼠标来说复杂了?没有实用性。
复杂,但是一劳永逸。你说的没错,博主当然有摘要输出的权利,这个问题就好比:博主放置广告以获取收益是合理的,但用户用 adblock 屏蔽广告也是合理的。况且会用 Greasemonkey 的绝不会是大多数人,呵呵
…这个不吸引我,最吸引的还是你的留言框,太喜欢了! :p …
上下浮动对吧,呵呵,这里顺便预告一下,我在对它进行一次大升级,本月祭出,绝对让它精彩翻倍!haha
我也动了新主题的心…准备一个新的…
好办法,多谢分享!
顺便向老肥申请一个友情链接,呵呵 🙂
Done 😀
我是为了试试看“允许评论区块上下浮动”是什么效果的- –
呃..不需要评论也能看效果的,就是输入框会动。不过目前 Firefox only…
哦~换FF看到鸟~~不错的说。
话说IE7开始就支持position:fixed了,为啥IE7没有效果捏~难道不是用fixed做的哦?
是 fixed, 我也不知道怎么只有 Firefox 有效,浏览器判断语句是 !=IE, Opera Safari 统统不行-___-
ps: 放一个 favicon.ico 到你的根目录吧,不然你在侧栏是光秃秃的喔! 😮
恩加上了~你的评论者名字旁边自动获取fovicon的功能很有爱呀~~
貌似可耻的失败了- –
7拐8拐终于找到这里,今天貌似还不能访问。就想说一句,这个feed输出全文太爽了。突破限制,自由的感觉真好!
嗯,我目前用下来就是觉得个别网站没有清晰的 html 标注,不爽
昨天一天都上不了你和老帕的站,你昨晚可以了,老帕的到现在还不行。我们第5实验室的好像正常哦。
是的,hm 的效率有点低…
是服务器IP被和谐了?
nod…
貌似feed还不行,我翻墙过去看帕,他仍在不断更新,未受任何影响。 🙂
是啊,可以更新,就是国内看不到-_-b 现在好了 😀
outlook2007 这样的 怎么设置呢?
outlook 没有 Firefox 这么好的扩展环境,应该是没法这样用脚本的…
牛博的怎么弄啊,不懂源文件的菜鸟求教了……
url: ”http://www.bullog.cn”,
xpath: ”//div[@class=”EntryBody”]”,
我试过是可用的
请问老肥,我不用Firefox可不可以用这个插件!
Opera 可以直接使用部分脚本的,不知道这个行不行。其他浏览器好像不行吧
确实不错的功能
一直用谷歌阅读器,feedsky支持共享输入
东西不错,收了 ☕
请问 http://feeds.feedburner.com/mr6 这种情况在大陆该如何处理(给出的内容是feed.feedburner.com的超链)
1.有什么办法不通过代理直接看到全文吗?
2.如果必须通过代理,代码应该怎么写,谢谢:)
这个问题和 cnbeta 的情况类似,因为作者在烧制 FeedBurner 的时候启用了点击统计,所以烧出来的文章标题链接是一个 FeedBurner 的链接,中间有个跳转过程。而且由于 feeds.feedburner.com 被墙,实际上是跳转不了的,除非你在国外,或者翻墙。
解决办法:
建议博主去掉跳转,你可以把我 这篇文章 给他看看,或者订阅他的原始feed, 比如 mr6.cc/feed, mr6.cc/?feed=rss2 之类的,就没有 FeedBurner 跳转了
老肥兄!是不是我太笨了,这篇文章我看了几次了,还是不能正确的修改源代码,所以rss阅读器不能读出全文feed,我使用的是鲜果,能不能把具体修改方法发到我的邮箱,非常急切!
我介绍的方法是 Google Reader 的……鲜果也有个脚本,看看吧
不能对付cnBeta好像对我没什么用…
cnBeta 有人做了pipe, 正文最后就是 cB 的全文订阅地址喔~
会慢一拍,不过关系不大,要抢sf的话看 feed 根本不行,哈哈
研究了一下,好使.
花了不少时间,因为不懂技术.
已经收藏,谢谢了
这个网站搞不定,能帮忙看看吗?
http://www.eprice.com.tw/
代码里我写的是:
{
url: ‘http://www.eprice.com.tw/news/’,
xpath: ‘//div[@class=”jump_page_bar”]’,
},
谢谢
我试过了可以的喔
{
url: ‘http://www.eprice.com.tw’,
xpath: ‘//div[@id=”news_content”]’,
charset: ‘big5’
},
👿 👿 💡 🌈 ☕ ☕ ☕ ☕ 👿 dfdfdfdf 😮 😮 😮 🙁 🙁 😆 😉
可否帮忙看看苹果blog应该怎样写代码?我找不到那个div[@id是哪个哦?谢谢?
这里有一个例子:http://blog.1-apple.com.tw/dsp_RSS.cfm?BlogCode=writershu
不一定是 div, 也不一定是 id…只要是能囊括正文的标注
你说的这个应该这么写:
{
url: ‘http://blog.1-apple.com.tw’,
xpath: ‘//span[@class=”article-text”]’,
charset: ‘big5’
},
谢谢!搞定了 ^_^
BetterGreader这个插件也可以,如果你用Greader到话。
老肥,找你的说法做了,未生效,看看新浪,现在XPath应该选择什么呢?
我一开始写的新浪的 xpath 一直是有效的,试试看?
{
url: ‘http://(rss|sports|2008).sina.com.cn’,
xpath: ‘//div[@id=”artibody”]’,
charset: ‘gb2312’
},
不错啊,感谢~
fisio,貌似牛博还是无法搞定。。。
老肥,那个cnbeta全文输出的地址好像失效了,从本月6日就不更新了~
谢谢提醒,我说怎么这几天 Google Reader 里面新文章少了很多呢,呵呵
我刚看了下另一个全文源,最近获取全文好像也出了问题,不过至少还在更新:
http://www.hifiwiki.net/news/rss/cnbeta.xml
偶然发现,在股沟搜索这篇文章,第一却不是这篇
我很多文章都这样……哎
很奇怪 ,为什么我的firefox安装路径下没有这个gm_scripts文件夹 ??
在配置文件夹下面,到 %appdata%\Mozilla 下面找找吧
嘿! 老兄 谢谢你的文章 我搞定了!
我现在使用了”google reader full feed changer”GM脚本实现了驱动之家的RSS全文输出,但是遇到了较长的需要翻页的文章,只能显示第一页的内容。请问资深人士,能不能帮忙看看怎么改动脚本可以使需要翻页的文章真正的全文输出到Google Reader。万分感谢。可以回邮件吗?
{
url: ‘http://(rss|news).mydrivers.com’,
xpath: ‘//td[@class=”f14_black”]’,
charset: ‘gb2312’ //非必需
},
这个基本上做不到,后几页的地址无从获得啊
雾之大陆介绍过AutoPager,也是用XPath创建规则的。是否可以找出当前指向下一页的连接,指带有“下一页,next,>>”的连接,找出每一页不同的部分,也就是所要附加的部分?
嗯,那是运行在原文原页面上的脚本喔,我也在用,阅读器里就麻烦了。有这功夫还是打开原文看吧,人家也不容易,呵呵
我只是研究一下。 🙂
要是正文部分没有用div标签标注怎么办?
table, tr, td, 都可以…
😀 多谢 好方法~
新浪体育的那个
class=”artibody”换成id=”artibody”才可以,呵呵
不知道是不是这么久之后改版了
我的一直能用,所以也没去管它是不是更新了,呵呵
请教一下:您这个方法是否只能在Firefox中使用?
可否在谷歌浏览器中使用?
谢谢!
谷歌浏览器目前肯定是不行的
这是在浏览器终端展开全文,当然可以用 yahoo pipes 等网络服务预先展开全文,那就和阅读器、浏览器没关系了
可以参考一下煎蛋上的文章 http://jandan.net/2008/11/15/yahoo-pipes.html
非常感谢您的指点!
http://forum.putclub.com/forumdisplay.php?fid=91&page=1
这个论坛怎么设置呀~
晕,看上去挺正常的,我试了下不成功
{
url: 'http://forum.putclub.com',
xpath: '//td[@class="postcontent"]',
charset: 'gbk'
},
or
{
url: 'http://forum.putclub.com',
xpath: '//div[@class="t_msgfont"]',
charset: 'gbk'
},
最近改用了cnBeta的FeedBurner全文Feed,但是这个Feed有一个不好的地方:不显示正文的图片和视频。有没有什么办法解决这个问题呢?
这些也都是使用者自己烧的,我现在都没有在用那个了,试试这个吧:
feedproxy.google.com/cnbeta
哈哈,终于找到解决这死问题的文章啦!谢谢博主分享!
嗯,顺便请博主帮忙看怎么添BBC中文的脚本.
等待中~~
谢啦
还没弄懂~
这个方法不错哦
FF 还有这个功能?? 太强大了。
Firefox 的扩展性还是很厉害的哟
突然想到你原来写过这篇日志,跑过来研究了一下,结果对Gigazine.net似乎无效,似乎和CB一样采用了跳转,有冇有办法啊?
是这样的,不过还是有办法,cb 的跳转只是链接结构改变,但文章 id 还是一样的,我没有仔细研究过,不过 @shawnster 和 @sfufoet 好像都贴过 yahoo pipes 的教程,另外可以去 http://www.hifiwiki.net/news 找一下有没有现成的 🙂
请问下
http://www.chong4.com.cn/read.php?1727 和http://www.plyiyi.cn/dongji/%E6%96%B0%E5%B9%B4%E6%96%B0%E6%B0%94%E8%B1%A1-%E9%80%89%E6%96%B0%E8%A1%A3%E6%9C%8D%E5%96%BD/ 这样的应该如何写呢?
我的前面一个写的是 {
url: ‘http://www.chong4.com.cn/feed.php’,
xpath: ‘//div[@class=”textbox-content”]’,
charset: ‘gb2312’
},
但是还是不对,希望你能帮忙一下,谢谢!
很奇怪,我刚试了一下也不成功,但是想不出是为什么。我写的跟你有点不一样的是:
url: ‘http://www.chong4.com.cn’,
xpath: ‘//div[@class=”textbox-content”]’,
charset: ‘UTF-8’
},
老肥兄,full feed change好像失效不能用了
我刚试了一下新浪体育还是好的…
好脚本,不过这样的只能设置全文的起点,不能设置全文的末点,在RSS中就显示了很多没有用的信息(比如网站文章页的页脚之类的信息)
有没有办法解决这个问题呢?
不是问题,如果在 xpath 中设置读取 div class=”post” 的部分,则只会读取到这样的 div 结束的地方 </div>
哦。
1)那像很多站点会这样构造
而事实上info的DIV里面显示的内容不是我想要的
2)有些采用的是表格构造
这两种情况怎么解决哈?
表格构造还是有办法的,td tr 什么的都可以用,但一定要有特殊的 class or id.
更复杂的抓取恐怕是不行了,不过可以试试 Yahoo! Pipes, 那玩意估计行 😮
貌似刚才打的代码没出来,比如POST层里还有一个INFO的层。INFO的内容不是我想要看的
肥兄,新浪韩寒blog应该怎么写啊?实在没有搞出来来请教你
前两天 jason5ng32 专门在用这个脚本折腾韩寒的博客,不过他说可以全文,但是死活搞不定乱码啊?要不你在 twitter 上 @ 他问问看
这样不好,如果网站没有收益,如果新浪变成腾讯或搜狐。。。。。。我就不用rss了。。。。。
新浪会没有收益……这跟中石化叫穷一样啊
博主,这个现在还能用么,帮帮我看下这个联合早报的 http://www.zaobao.com/zg/zg090429_501.shtml
硬是没找到class……
{
url: ‘http://www.zaobao.com’,
xpath: ‘//div[@class=”c3″]’
},
新浪的那个要把class改成id了,测试成功,但是http/www.mytvblog.org/?feed=rss2的却不行,难道是因为撞墙,只有http://mrss.dokoda.jp/ai/http/www.mytvblog.org/?feed=rss2可以。还有,这些feed是存在google上的,即使原文删除了照样可以看,现在这样一改之后估计就不行了?
对,这个只是在你打开的时候才去获取原文,不能保存。而且是直接从本机发出访问,也就没有了 Google Reader 的翻墙功能
博主你好 我第一次使用feed这个东西 请问
http://rss.yoka.com/beauty/xianqixiren.xml
该怎么设置全文输出呢
不错,学习了,以前怎么搞也搞不明白,现在看你这么一说知道了`~~
有个在线工具非常好用:http://feedex.net/
谢谢推荐!
不支持火狐3.5.X,郁闷呢
爬了不少文也找不到不能輸出eprice rss的全文的原因,博主知道原因嗎?
{
url: ‘http://(www.eprice.com.tw|www.phonedaily.com)’,
xpath: ‘//div[@class=”content”]’,
charset: ‘utp8’
},
你好,十分感谢你的方法,不过你右边的浮动发表评论是如何实现的啊 能否分享一下代码啊 谢谢了哦
样式,脚本,都是明的,自己用 firebug 看看就知道了。。
收下了.来这里太晚了.有找到好东西了!
博主的主题真亲切
sina博客的全文输出怎么搞啊,试了几次都不成功,找不到合适的xpath
谢谢你的方法,试过新浪的可以
{
url: ‘http://(sports|rss).sina.com.cn’,
xpath: ‘//div[@class=”blkContainerSblkCon”]’,
},
但是明报的xpath怎样试都找不到?
http://news.mingpao.com/RSS/webnews/ca.xml
小弟顺手弄得几个,发现都可用,共享下
{
url: ‘http://www.cnbeta.com’,
xpath: ‘//div[@id=”news_content”]’,
charset: ‘gb2312’
},//cnbeta
{
url: ‘http://cn.engadget.com’,
xpath: ‘//div[@class=”postbody”]’,
charset: ‘utf-8’
},//瘾科技
{
url: ‘http://jandan.net’,
xpath: ‘//div[@class=”post f”]’,
charset: ‘UTF-8’
},//煎蛋
{
url: ‘http://(feed|www).ipc.me/’,
xpath: ‘//div[@class=”post_content”]’,
charset: ‘utf-8’
},//ipc
{
url: ‘http://(feed|www).iplaysoft.com/’,
xpath: ‘//div[@class=”entry-content”]’,
charset: ‘utf-8’
},//异次元
{
url: ‘http://www.infzm.com’,
xpath: ‘//div[@id=”content-context”]’,
charset: ‘utf-8’
},//南方周末所有订阅点
下面这个是添加南方周末-图片新闻以后的代码,遗憾的只能显示首页,需要按照http://qixinglu.com/archives/google_reader_full_feed_changer_multi_part_xpath里的方法改一下参数
{
url: ‘http://www.infzm.com’,
xpath: ‘//div[@id=”content-context”]|//div[@class=”photo”]|//div[@class=”caption”]’,
},
{
url: ‘http://blog.sina.com.cn’,
xpath: ‘//div[@id=”sina_keyword_ad_area2″ and @class=”articalContent “]’,
charset: ‘utf-8’
},//新浪博客
而且发现js文件编辑不支持ansi,需要用utf-8编写,特别是冒号、顿号在两者中间差别比较大,所以许多童靴的地址看起来写的是对的,但没有效果,原因可能在此
这个基本上算是实时的了,且速度绝对的快 http://cnbetarss.sinaapp.com/feed
且有热门评论
也可以选择全文输出的rss