def _api_delete(self, a, b, params = {}, **replace): url = self._urlreplace(a, b, replace) params = self._rm_noparams(params) params = self._convert_str_params(params) res = self.oauth.oauth_http_request(url, "DELETE", params) return twitterxml.xmlparse(res.read())
def _api_delete(self, a, b, params={}, **replace): url = self._urlreplace(a, b, replace) params = self._rm_noparams(params) params = self._convert_str_params(params) conn = self.oauth.oauth_http_request(url, "DELETE", params) response = conn.getresponse() return twitterxml.xmlparse(response.read())
def _api_noauth(self, url, params): # No use OAuth, GET only paramstr = urllib.urlencode(params) data = urllib2.urlopen("%s?%s" % (url, paramstr)) header = data.info() self._set_ratelimit_ip(header) xml = data.read() return twitterxml.xmlparse(xml)
def _api_delete(self, a, b, user="", _id="", params={}): if not user: user = self.user["screen_name"] url = self.url[a][b] url = url.replace("%user%", str(user)) url = url.replace("%id%", str(_id)) params = self._rm_noparams(params) res = self.oauth.oauth_http_request(url, "DELETE", params) return twitterxml.xmlparse(res.read())
def __init__(self, ckey, csecret, atoken, asecret, oauth_obj=None): if oauth_obj == None: self.oauth = oauth.oauth(ckey, csecret, atoken, asecret) else: self.oauth = oauth_obj req = self.oauth.oauth_request(self.url["account"]["verify_credentials"]) getxml = urllib2.urlopen(req).read() user = twitterxml.xmlparse(getxml) self.user = user
def initialize(self): # Get user info req = self.oauth.oauth_request( self.url["account"]["verify_credentials"]) xml = urllib2.urlopen(req).read() self.user = twitterxml.xmlparse(xml) # Get rate limit limit = self.rate_limit() self.ratelimit_limit = int(limit["hourly-limit"]) self.ratelimit_remaining = int(limit["remaining-hits"]) self.ratelimit_reset = datetime.datetime.fromtimestamp( int(limit["reset-time-in-seconds"])) iplimit = self.rate_limit(ip_limit = True) self.ratelimit_iplimit = int(iplimit["hourly-limit"]) self.ratelimit_ipremaining = int(iplimit["remaining-hits"]) self.ratelimit_ipreset = datetime.datetime.fromtimestamp( int(iplimit["reset-time-in-seconds"]))
def initialize(self): # Get user info req = self.oauth.oauth_request( self.url["account"]["verify_credentials"]) xml = urllib2.urlopen(req).read() self.user = twitterxml.xmlparse(xml) # Get rate limit limit = self.rate_limit() self.ratelimit_limit = int(limit["hourly-limit"]) self.ratelimit_remaining = int(limit["remaining-hits"]) self.ratelimit_reset = datetime.datetime.fromtimestamp( int(limit["reset-time-in-seconds"])) iplimit = self.rate_limit(ip_limit=True) self.ratelimit_iplimit = int(iplimit["hourly-limit"]) self.ratelimit_ipremaining = int(iplimit["remaining-hits"]) self.ratelimit_ipreset = datetime.datetime.fromtimestamp( int(iplimit["reset-time-in-seconds"]))
class api(): # url, method from url_method import url, method def __init__(self, ckey, csecret, atoken, asecret, screen_name="", oauth_obj=None): # Oauth init if oauth_obj == None: self.oauth = oauth.oauth(ckey, csecret, atoken, asecret) else: self.oauth = oauth_obj self.user = {"screen_name": screen_name} # ratelimit var init self.ratelimit_limit = -1 self.ratelimit_remaining = -1 self.ratelimit_reset = datetime.datetime.now() self.ratelimit_iplimit = -1 self.ratelimit_ipremaining = -1 self.ratelimit_ipreset = datetime.datetime.now() # Option initialization method # Only for backward compatibility... def initialize(self): # Get user info req = self.oauth.oauth_request( self.url["account"]["verify_credentials"]) xml = urllib2.urlopen(req).read() self.user = twitterxml.xmlparse(xml) # Get rate limit limit = self.rate_limit() self.ratelimit_limit = int(limit["hourly-limit"]) self.ratelimit_remaining = int(limit["remaining-hits"]) self.ratelimit_reset = datetime.datetime.fromtimestamp( int(limit["reset-time-in-seconds"])) iplimit = self.rate_limit(ip_limit=True) self.ratelimit_iplimit = int(iplimit["hourly-limit"]) self.ratelimit_ipremaining = int(iplimit["remaining-hits"]) self.ratelimit_ipreset = datetime.datetime.fromtimestamp( int(iplimit["reset-time-in-seconds"])) def _api(self, a, b, params={}, noauth=False, **replace): url = self._urlreplace(a, b, replace) method = self.method[a][b] params = self._rm_noparams(params) params = self._convert_str_params(params) if noauth: # try no auth request try: return self._api_noauth(url, params) except urllib2.HTTPError, e: if e.code in (401, 403): pass else: raise req = self.oauth.oauth_request(url, method, params) data = urllib2.urlopen(req) header = data.info() self._set_ratelimit(header) xml = data.read() return twitterxml.xmlparse(xml)
def _api_noauth(self, url, params): # No use OAuth, GET only paramstr = urllib.urlencode(params) xml = urllib2.urlopen("%s?%s" % (url, paramstr)).read() return twitterxml.xmlparse(xml)