def followers(self): url = 'http://twitter.com/followers/ids.json' result = urlfetch.fetch( url = url, headers = self.auth_header, ) logging.debug(result.status_code) logging.debug(result.content) if result.status_code == 200: keys = ["id:%d" % (id) for id in simplejson.loads(result.content)] # 既に登録されているidかどうかをチェックする for id in IDS.all().filter('follower =', True): key_name = id.key().name() # 登録されていれば処理の必要なし if key_name in keys: keys.remove(key_name) # フォローされている筈だったのが外されている場合 else: id.follower = False id.put() # 新規にフォローされたidとして登録 ids = [] for key in keys: id = IDS.get_by_key_name(key) if id == None: id = IDS(key_name = key, friend = False) id.follower = True ids.append(id) db.put(ids)
def destroy(self): # リムーブすべきidの抽出 query = IDS.all() query.filter("friend =", True) query.filter("follower =", False) ids = query.fetch(100) if len(ids) == 0: return # APIへの送信 id = random.choice(ids) url = "http://twitter.com/friendships/destroy/%s.json" % (id.key().name()[3:]) result = urlfetch.fetch(url=url, method=urlfetch.POST, headers=self.auth_header) logging.debug(result.status_code) logging.debug(result.content) if result.status_code == 200: # 内部データの更新 id.delete()
def destroy(self): # リムーブすべきidの抽出 query = IDS.all() query.filter('friend =', True) query.filter('follower =', False) id = query.get() if id: # APIへの送信 url = 'http://twitter.com/friendships/destroy/%s.json' % (id.key().name()[3:]) result = urlfetch.fetch( url = url, method = urlfetch.POST, headers = self.auth_header, ) logging.debug(result.status_code) logging.debug(result.content) # 内部データの更新 id.delete()
def create(self): # フォローすべきidの抽出 query = IDS.all() query.filter('follower =', True) query.filter('friend =', False) ids = query.fetch(100) if len(ids) == 0: return # APIへの送信 id = random.choice(ids) url = 'http://twitter.com/friendships/create/%s.json' % (id.key().name()[3:]) result = urlfetch.fetch( url = url, method = urlfetch.POST, headers = self.auth_header, ) logging.debug(result.status_code) logging.debug(result.content) if result.status_code == 200: # 内部データの更新 id.friend = True id.put()
def reset(self): db.delete(IDS.all())