def run(self): dict_monitoring_thread = {} lst_pre_article_list = [] objBoard = Board(board_id=self.board_id) while True: lst_cur_article_list = objBoard.get_topN_page_article_idx_list(self.top_n_page) lst_new_article_list = list(set(lst_cur_article_list)-set(lst_pre_article_list)) lst_remove_article_list = list(set(lst_pre_article_list) - set(lst_cur_article_list)) lst_pre_article_list = lst_cur_article_list #create article monitor and send board data to receiver for article_id in lst_new_article_list: log.info("Start to monitor New article_id {article_id}".format(article_id=article_id)) obj_new_article = article_monitor(board_id=self.board_id,article_id=article_id) obj_new_article.set_receiver("ptt_article",self.get_receiver("ptt_article")) obj_new_article.set_receiver("ptt_reply",self.obj_reply_receiver) obj_new_article.start() dict_monitoring_thread[article_id] = obj_new_article log.info("Wait for 2 second") time.sleep(2)
from pttcrawler.Board import Board if __name__ == '__main__': obj_gossiping_board = Board(board_id="Gossiping") for obj_article in obj_gossiping_board.get_articles(obj_gossiping_board.get_topN_page_article_idx_list(10)): print obj_article.article_id,obj_article.title print obj_article.content