Как использовать Posterous API, чтобы "почистить" свой собственный сайт для получения информации об участнике, дате и ответной информации

Как преподавателю колледжа в STEM, мне нравится, когда я могу использовать технологии, чтобы улучшить учебный опыт своих учеников, и мне вдвойне нравится, когда это позволяет мне также познакомить их с крутыми технологиями.

В течение прошлого года у меня было несколько классов, которые делали посты на сайте Posterous (http://spectrawiki.posterous.com) и публиковали комментарии к постам других. Это необходимо для курса, и я был обременен отслеживанием активности в классе.

Я надеялся, что смогу загружать контент сайта так, чтобы он предоставил мне нужные мне данные (кто разместил, когда они разместили, и если они разместили статью или комментарий), но у Posterous такой функциональности нет. Очень отзывчивый Posterous Tech предложил мне взглянуть на API.

Но я не кодер. Я достаточно разбираюсь в кодировании (HTML, PHP, Matlab, Python, R, Mathematica), чтобы уважать тех, кто действительно знает, что делает.

Поэтому я спрашиваю сообщество Stack Overflow: как я могу соединить что-то (например, скрипт Python) с API, чтобы получить данные, которые я ищу (перечислены выше)? Есть ли какие-нибудь учебные пособия, которые позволят мне пройти через этапы создания сценария? Я никогда не использовал API раньше, поэтому я не знаю, с чего начать.

Заранее спасибо за любые указатели.

[Править] Например: у Справочника Posterous есть пример, подобный этому

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

когда это говорит о том, что API RESTful. Как я могу изменить эту команду curl, чтобы она возвращала некоторую информацию о моем сайте Posterous? Я могу (вероятно) обрабатывать флаги аутентификации и этот маркерный флаг. Но используя другие флаги, я могу использовать указатель.

1 ответ

Продолжение, 5 декабря 2012 г. Похоже, что пиостероз больше не работает. Мои сценарии терпят неудачу, и pyposterous не проходит свои собственные модульные тесты. Облом.

====

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

Это грубый сценарий, но он выполняет основную работу.

Другие вопросы по тегам