def push_fav(self, dict_info): url = dict_info.get('url', '') data_id = dict_info.get('id') title = dict_info.get('title') # f = Fav(url, '735b3e76-e7f5-462c-84d0-bb1109bcd7dd', '') f = Fav(url, 'f082258a-fd9a-4713-98a0-d85fa838f019', '') f.get_content() redis_obj.sadd('zhihu_zhuanlan_id', data_id) InstaPushNotify.notify(title, type_info=2)
def get_list(self): r = s.get(self.fav_url, headers=self.headers) # print r.content # print r.headers # print r.url # print r.status_code res_json = r.json() paging = res_json.get('paging', {}) next_url = paging.get('next', '') data_list = res_json.get('data', []) for answer in data_list: question = answer.get('question', {}) title = question.get('title', '') id = int(answer.get('id', '')) url = answer.get('url', '') if title and id > 0 and url: find_queue = session.query(CollectionQueue).filter(CollectionQueue.answer_id == id).first() if not find_queue: self.check_num += 1 web_url = 'http://www.zhihu.com/question/20070065/answer/%s' % id cq = CollectionQueue() cq.fav_id = self.fav_id cq.title = title cq.api_url = url cq.web_url = web_url cq.answer_id = id cq.add_time = int(time.time()) session.add(cq) session.commit() session.close() sqs_body = { 'api_url':url, 'parent_note':self.parent_note, 'answer_id':cq.answer_id } m = Message() m.set_body(json.dumps(sqs_body)) zhihufav_sqs.write(m) else: if find_queue.fav_id == 0: find_queue.fav_id = self.fav_id session.commit() print("[Find Queue] %s" % url) if len(data_list): self.check_page = self.check_page - 1 self.fav_url = next_url if self.force: print("force next url %s" % next_url) return self.get_list() elif self.check_page > 0: print("start next url %s" % next_url) return self.get_list() title = self.title num = self.check_num if num > 0: InstaPushNotify.notify(title, str(num))