コード例 #1
0
ファイル: clone_tumblr.py プロジェクト: DirkR/clone_tumblr
def get_posts(hostname, oauth, api_key, offset=0, limit=10):
    pattern = r'http://api.tumblr.com/v2/blog/%s/posts?api_key=%s&filter=raw&offset=%s&limit=%s'
    posts_url = pattern % (hostname, api_key, offset, limit)

    resp, content = oauth.request(posts_url, "GET")

    if resp['status'] != '200':
        raise Exception("Invalid response %s." % resp['status'])

    return json.loads(content)['response']['posts']
コード例 #2
0
ファイル: clone_tumblr.py プロジェクト: DirkR/clone_tumblr
def get_info(hostname, oauth, api_key):
    info_url = r'http://api.tumblr.com/v2/blog/%s/info?api_key=%s' % (
        hostname,
        api_key
    )
    resp, content = oauth.request(info_url, "GET")

    if resp['status'] != '200':
        raise Exception("Invalid response %s." % resp['status'])

    return json.loads(content)['response']
コード例 #3
0
 def regTwitter(self, token_key=None, token_secret=None, token_pin=None):
     import oauth2
     import autosub.notify.twitter as notifytwitter
     try:
         from urlparse import parse_qsl
     except:
         from cgi import parse_qsl
     if not token_key and not token_secret:
         consumer = oauth2.Consumer(key=notifytwitter.CONSUMER_KEY,
                                    secret=notifytwitter.CONSUMER_SECRET)
         oauth_client = oauth2.Client(consumer)
         response, content = oauth2.request(notifytwitter.REQUEST_TOKEN_URL,
                                            'GET')
         if response['status'] != '200':
             message = "Something went wrong when trying to register Twitter"
             tmpl = PageTemplate(
                 file="interface/templates/config-settings.tmpl")
             tmpl.message = message
             tmpl.displaymessage = "Yes"
             tmpl.modalheader = "Error"
             return str(tmpl)
         else:
             request_token = dict(parse_qsl(content))
             tmpl = PageTemplate(
                 file="interface/templates/config-twitter.tmpl")
             tmpl.url = notifytwitter.AUTHORIZATION_URL + "?oauth_token=" + request_token[
                 'oauth_token']
             token_key = request_token['oauth_token']
             token_secret = request_token['oauth_token_secret']
             tmpl.token_key = token_key
             tmpl.token_secret = token_secret
             return str(tmpl)
     if token_key and token_secret and token_pin:
         token = oauth2.Token(token_key, token_secret)
         token.set_verifier(token_pin)
         consumer = oauth2.Consumer(key=notifytwitter.CONSUMER_KEY,
                                    secret=notifytwitter.CONSUMER_SECRET)
         oauth_client2 = oauth2.Client(consumer, token)
         response, content = oauth_client2.request(
             notifytwitter.ACCESS_TOKEN_URL,
             method='POST',
             body='oauth_verifier=%s' % token_pin)
         access_token = dict(parse_qsl(content))
         if response['status'] != '200':
             message = "Something went wrong when trying to register Twitter"
             tmpl = PageTemplate(
                 file="interface/templates/config-settings.tmpl")
             tmpl.message = message
             tmpl.displaymessage = "Yes"
             tmpl.modalheader = "Error"
             return str(tmpl)
         else:
             autosub.TWITTERKEY = access_token['oauth_token']
             autosub.TWITTERSECRET = access_token['oauth_token_secret']
             message = "Twitter registration complete.<br> Remember to save your configuration and test Twitter!"
             tmpl = PageTemplate(
                 file="interface/templates/config-settings.tmpl")
             tmpl.message = message
             tmpl.displaymessage = "Yes"
             tmpl.modalheader = "Information"
             return str(tmpl)