2011-09-29 35 views
2

作爲STEM的大學老師,我喜歡它,當我可以使用技術來提高我的學生的學習體驗,當我允許我將它們引入酷技術時,我倍加喜歡它。如何使用Posterous API'刮'我自己的網站的貢獻者信息,日期信息和回覆信息

在過去的一年中,我已經有幾個課程將帖子發佈到Posterous網站(http://spectrawiki.posterous.com)並發表評論到其他人的帖子。這是課程所必需的,我一直在跟蹤課堂活動。

我希望我可以下載網站內容的方式爲我提供我需要的數據(誰發佈,何時發佈,以及是否發佈文章或評論),但是Posterous沒有此功能。一個非常敏感的Posterous技術建議我看看API。

但我不是一個編碼器。我對編碼(HTML,PHP,matlab,python,R,Mathematica)有足夠的瞭解,以尊重那些真正瞭解他們在做什麼的人。

所以我問Stack Overflow社區:我怎麼可以用API來獲取我正在查找的數據(如上所列)的某些東西(例如,Python腳本)?有沒有任何教程可以引導我完成構建腳本的步驟?我以前從未使用API​​,所以我不知道從哪裏開始。

在此先感謝任何指針。

[編輯] 對於實施例:所述Posterous API參考具有這樣

curl -X PUT --user [email protected]:password -d "api_token=<your token>" -d "post[title]=New Title" http://posterous.com/api/2/sites/12345/posts/6789 

一個例子時,它談到了API是RESTful的。我怎樣才能修改這個curl命令來返回一些關於我的 posterous網站的信息?我可以(可能)處理身份驗證標誌和該令牌標誌。但使用其他標誌,這是我可以使用指針的地方。

+0

您的問題過於寬泛。對於「posterous api python示例」的前五個搜索結果是一個很好的開始,就工具而言,以及一些Python教程是開始吸取語言的一種方式。如果您有更具體的編程問題,請按照常見問題回答問題。 – agf

+0

agf - 感謝您的快速響應。這是一個廣泛的問題,因爲我正在爲任何事情而投降。我查看了Posterous API參考(http://posterous.com/api),許多這些網站都將其稱爲文檔,但男孩喜歡它不適合像我這樣的人。所以我想我會喜歡HOWTOs的指針,這會讓我的腿受到傷害。 –

+0

你有沒有關注通過[Pyposterous](https://github.com/thomasw/pyposterous),一個用於訪問API的Python庫的鏈接?它看起來[相當有據可查](http://thomasw.github.com/pyposterous/)。 – agf

回答

2

後續,2012年12月5日:它看起來像詭異的不再起作用。我的腳本失敗了,並且詭異的失敗了它自己的單元測試。遊民。

====

Pyposterous沒有,着實給我的工具,回答我的問題,所以我想我會在這裏分享給別人。這是我寫的劇本:

import datetime 
import pyposterous 
from pyposterous import Cursor 

api = pyposterous.API(username='[username]', password='[passwd]') 

d=datetime.datetime.today().strftime("%y%B%d-%H%M") 
filename = 'report-posts-' + str(d) +'.txt' 
log=open(filename,'w') 

for post in Cursor(method=api.read_posts, start_page=1, parameters={'hostname':'spectrawiki'}): 
    try: 
     print >> log, "--------------------" 
     print >> log, "%s, %s, %s" % (post.author, post.date, post.title) 
    except AttributeError: 
     pass # No comments 
    except UnicodeEncodeError: 
     pass 

這是粗劇本,但它可以基本完成這項工作。