2024-07-07 06:23:14 发布
网友
有没有办法通过digg的rss提要获取链接?或者我必须获得网站,然后用正则表达式手动刮取它?在
我想从rss获得digg指向的真正链接,而不是评论提要。在
示例- http://feeds.digg.com/~r/digg/popular/~3/Hx0VATaafSw/Apple_Scaling_Final_Cut_Studio_Apps_to_Fit_Prosumers_2
去
http://www.appleinsider.com/articles/10/05/18/apple_scaling_final_cut_studio_apps_to_fit_prosumers.html
您可以使用diggapi的story.getInfo方法。其中一个可能的参数是clean_title,您可以从RSS提要中的链接解析它。下面是一个示例实现:
import feedparser import urllib2 from xml.etree import ElementTree rss_link = 'http://feeds.digg.com/digg/popular.rss' api_link = 'http://services.digg.com/1.0/endpoint?method=story.getInfo&clean_title=%s' data = feedparser.parse(rss_link) for i, e in enumerate(data.entries, 1): print '%d. Digg link: %s' % (i, e.link) title = e.link[e.link.rfind('/') + 1 :] xml = urllib2.urlopen(api_link % title).read() tree = ElementTree.fromstring(xml) print '%d. Real link: %s' % (i, tree.find('story').get('link'))
。。。哪些输出:
看一下feedparser模块。在
>>> import feedparser >>> d = feedparser.parse('http://feeds.digg.com/digg/popular.rss') >>> for entry in d.entries: ... print entry.link ... http://feeds.digg.com/~r/digg/popular/~3/Hx0VATaafSw/Apple_Scaling_Final_Cut_Studio_Apps_to_Fit_Prosumers_2 http://feeds.digg.com/~r/digg/popular/~3/mXb8b0QH3Rc/Skateboarder_Lives_Any_Man_s_Worst_Nightmare_video http://feeds.digg.com/~r/digg/popular/~3/61N9gFUth1k/CBS_A_bloodbath_of_cancellations http://feeds.digg.com/~r/digg/popular/~3/vZ3_6F1RAcI/Red_Dead_Redemption_Free_Roam_Done_Right (snip)
您可以使用diggapi的story.getInfo方法。其中一个可能的参数是clean_title,您可以从RSS提要中的链接解析它。下面是一个示例实现:
。。。哪些输出:
^{pr2}$看一下feedparser模块。在
相关问题 更多 >
编程相关推荐