예제 #1
0
    def create_book(self, command, counter):
        BaseClass.reset_dir()

        BaseClass.logger.info(u"开始制作第 {} 本电子书".format(counter))
        BaseClass.logger.info(u"对记录 {} 进行分析".format(command))
        task = ReadListParser.get_task(command)  # 分析命令
        worker_factory(task['work_list'])  # 执行抓取程序
        BaseClass.logger.info(u"网页信息抓取完毕")

        BaseClass.logger.info(u"开始自数据库中生成电子书数据")
        create_epub(task)
        return
예제 #2
0
파일: main.py 프로젝트: zuiwan/ZhihuHelp
    def create_book(command, counter):
        Path.reset_path()

        Debug.logger.info(u"开始制作第 {} 本电子书".format(counter))
        Debug.logger.info(u"对记录 {} 进行分析".format(command))
        task_package = ReadListParser.get_task(command)  # 分析命令

        if not task_package.is_work_list_empty():
            worker_factory(task_package.work_list)  # 执行抓取程序
            Debug.logger.info(u"网页信息抓取完毕")

        if not task_package.is_book_list_empty():
            Debug.logger.info(u"开始自数据库中生成电子书数据")
            book = Book(task_package.book_list)
            book.create()
        return
예제 #3
0
파일: main.py 프로젝트: zuiwan/ZhihuHelp
    def create_book(command, counter):
        Path.reset_path()

        Debug.logger.info(u"开始制作第 {} 本电子书".format(counter))
        Debug.logger.info(u"对记录 {} 进行分析".format(command))
        task_package = ReadListParser.get_task(command)  # 分析命令

        if not task_package.is_work_list_empty():
            worker_factory(task_package.work_list)  # 执行抓取程序
            Debug.logger.info(u"网页信息抓取完毕")

        if not task_package.is_book_list_empty():
            Debug.logger.info(u"开始自数据库中生成电子书数据")
            book = Book(task_package.book_list)
            book.create()
        return
예제 #4
0
    def start(self):
        # 登陆
        login = Login()
        if SettingClass.REMEMBERACCOUNT:
            print u'检测到有设置文件,是否直接使用之前的设置?(帐号、密码、图片质量、最大线程数)'
            print u'直接点按回车使用之前设置,敲入任意字符后点按回车进行重新设置'
            if raw_input():
                login.login()
                SettingClass.PICQUALITY = self.config.set_picture_quality_guide(
                )
            else:
                HttpBaseClass.set_cookie()
        else:
            login.login()
            SettingClass.PICQUALITY = self.config.set_picture_quality_guide()

        # 储存设置
        self.config.save()
        # 主程序开始运行
        BaseClass.logger.info(u"开始读取ReadList.txt设置信息")
        readList = open('./ReadList.txt', 'r')
        bookCount = 1
        for line in readList:
            # 一行内容代表一本电子书
            chapter = 1
            BaseClass.logger.info(u"正在制作第 {0} 本电子书".format(bookCount))
            BaseClass.logger.info(u"对第 {0} 行的记录 {1} 进行分析".format(
                chapter, line))
            task = ReadListParser.parse_command(line)  #分析命令
            worker_factory(task['work_list'])  #执行抓取程序

            BaseClass.logger.info(u"网页信息抓取完毕,开始自数据库中生成电子书数据")
            content = extract_data(task)
            create_epub(content)

            BaseClass.logger.info(u"电子书数据生成完毕,开始生成电子书")
            try:
                if self.epubContent:
                    Zhihu2Epub(self.epubContent)
                del self.epubContent
            except AttributeError:
                pass
            BaseClass.logger.info(u"第 {0} 本电子书生成完毕".format(bookCount))
            self.resetDir()
            bookCount += 1
        return
예제 #5
0
    def start(self):
        # 登陆
        login = Login()
        if SettingClass.REMEMBERACCOUNT:
            print   u'检测到有设置文件,是否直接使用之前的设置?(帐号、密码、图片质量、最大线程数)'
            print   u'直接点按回车使用之前设置,敲入任意字符后点按回车进行重新设置'
            if raw_input():
                login.login()
                SettingClass.PICQUALITY = self.config.set_picture_quality_guide()
            else:
                HttpBaseClass.set_cookie()
        else:
            login.login()
            SettingClass.PICQUALITY = self.config.set_picture_quality_guide()

        # 储存设置
        self.config.save()
        # 主程序开始运行
        BaseClass.logger.info(u"开始读取ReadList.txt设置信息")
        readList = open('./ReadList.txt', 'r')
        bookCount = 1
        for line in readList:
            # 一行内容代表一本电子书
            chapter = 1
            BaseClass.logger.info(u"正在制作第 {0} 本电子书".format(bookCount))
            BaseClass.logger.info(u"对第 {0} 行的记录 {1} 进行分析".format(chapter, line))
            task = ReadListParser.parse_command(line) #分析命令
            worker_factory(task['work_list']) #执行抓取程序

            BaseClass.logger.info(u"网页信息抓取完毕,开始自数据库中生成电子书数据")
            content = extract_data(task)
            create_epub(content)

            BaseClass.logger.info(u"电子书数据生成完毕,开始生成电子书")
            try:
                if self.epubContent:
                    Zhihu2Epub(self.epubContent)
                del self.epubContent
            except AttributeError:
                pass
            BaseClass.logger.info(u"第 {0} 本电子书生成完毕".format(bookCount))
            self.resetDir()
            bookCount += 1
        return