Пример #1
0
    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