簡體   English   中英

如何從“http://myname.disqus.com/latest.rss”獲取RSS訂閱源到我的django博客?

[英]How to take rss feeds from “http://myname.disqus.com/latest.rss” to my django blog?

我想顯示來自disqus的最新3條評論,並將它們鏈接到他們所屬的帖子。 我有一些研究,他們通常解釋如何創建rss feed但我想要獲取rss數據。 當我打開這個rss時,我看到像這樣的xml:

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>

<title>unicrow - Latest Comments</title>
<link rel="http://api.friendfeed.com/2008/03#sup" href="http://disqus.com/sup/all.sup#forumcomments-e63e6ca0" type="application/json" xmlns="http://www.w3.org/2005/Atom"/>
<link>http://unicrowblog.disqus.com/</link>
<description/>
<atom:link href="http://unicrowblog.disqus.com/comments.rss" rel="self"/>
<language>en</language>
<lastBuildDate>Thu, 01 Nov 2012 10:54:23 -0000</lastBuildDate>

<item>
<title>Re: http://box:8005/post/git-flow/</title>
<link>http://box:8005/post/git-flow/#comment-697865561</link>
<description>&lt;p>hjkgjfgtk&lt;/p></description>
<dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">kripton1</dc:creator>
<pubDate>Thu, 01 Nov 2012 10:54:23 -0000</pubDate>
</item>
...
</channel>
</rss>

我想在我的django項目中使用這個xml。 如何使用這個xml rss feed ??

僅僅為了澄清,我之前沒有這樣做,但我認為研究這個鏈接可以提供幫助。 您可以解析xml並為您的項目形成一個HttpResponse。 希望這可以引導你走向正確的方向。

我找到了解決方案。 我在python中做了xml解析器

file = urllib2.urlopen('http://unicrowblog.disqus.com/latest.rss')
    data = file.read()
    file.close()
    dom = parseString(data)
    lists = []

    for i in range(1,4):
        xmlTag = dom.getElementsByTagName('description')[i].toxml()
        xmlData=xmlTag.replace('<description>&lt;p&gt;','').replace('&lt;/p&gt;</description>','')
        xmlDateTag = dom.getElementsByTagName('pubDate')[i].toxml()
        xmlDate=xmlDateTag.replace('<pubDate>','').replace('</pubDate>','')
        xmlLinkTag = dom.getElementsByTagName('link')[i+1].toxml()
        xmlLink=xmlLinkTag.replace('<link>','').replace('</link>','')

        data = {'xmlData':xmlData,'xmlDate':xmlDate,'xmlLink':xmlLink}
        lists.append(data)

我拿3條最新評論,我在模板中使用它:

{% for list in lists %}
    <li>
       <span>{{list.xmlData|slice:":80"}}...</span>
       <span>→ <a href="{{list.xmlLink}}">Devamı</a></span>
       <span class="time">{{list.xmlDate}}</span>
    </li>
{% endfor %}

使用此代碼,它會自動從Disqus中檢索數據並顯示

<div id="recentcomments" class="dsq-widget"><script type="text/javascript" src="http://YOURBLOG.disqus.com/recent_comments_widget.js?num_items=5&hide_avatars=1&avatar_size=50&excerpt_length=10"></script></div>

不要忘記提及您的博客名稱來代替YOURBLOG

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM