Exemplo n.º 1
0
    def __export (self,
                  page,
                  root,
                  outdir,
                  imagesonly,
                  alwaysOverwrite):
        """
        page - страница, начиная с которой надо начать экспортирование
        root - корневая страница, откуда началось общее экспортирование (для определения имени файлов)
        outdir - директория для экспорта
        imagesonly - из вложений оставлять только картинки?
        alwaysOverwrite - перезаписывать существующие файлы?
        """
        if page.getTypeString() != WikiDocument.getTypeString():
            try:
                exporter = ExporterFactory.getExporter (page)
                exportname = self.__nameGenerator.getName (page)
                self.__renames[page] = exportname

                exporter.export (outdir, exportname, imagesonly, alwaysOverwrite)
            except BaseException as error:
                self.__log.append (u"{0}: {1}".format (page.title, str(error)))

        for child in page.children:
            self.__export (
                child,
                root,
                outdir,
                imagesonly,
                alwaysOverwrite)
Exemplo n.º 2
0
 def pageCount(self):
     """
     Возвращает количество страниц в дереве
     """
     startcount = 0 if self._root.getTypeString(
     ) == WikiDocument.getTypeString() else 1
     return self._getChildCount(self._root) + startcount
Exemplo n.º 3
0
 def __getExportName (self, root, page):
     if root.getTypeString() == WikiDocument.getTypeString():
         exportname = os.path.basename (root.path) + "_" + page.subpath.replace ("/", "_")
     else:
         if page == root:
             exportname = page.title
         else:
             exportname = self.__getSubpathExportName(root, page)
     return exportname
Exemplo n.º 4
0
 def __getExportName (self, root, page):
     if root.getTypeString() == WikiDocument.getTypeString():
         exportname = os.path.basename (root.path) + "_" + page.subpath.replace ("/", "_")
     else:
         if page == root:
             exportname = page.title
         else:
             exportname = self.__getSubpathExportName(root, page)
     return exportname
Exemplo n.º 5
0
    def __export(self, page, root, outdir, imagesonly, alwaysOverwrite):
        """
        page - страница, начиная с которой надо начать экспортирование
        root - корневая страница, откуда началось общее экспортирование (для определения имени файлов)
        outdir - директория для экспорта
        imagesonly - из вложений оставлять только картинки?
        alwaysOverwrite - перезаписывать существующие файлы?
        """
        if page.getTypeString() != WikiDocument.getTypeString():
            try:
                exporter = ExporterFactory.getExporter(page)
                exportname = self.__nameGenerator.getName(page)
                self.__renames[page] = exportname

                exporter.export(outdir, exportname, imagesonly,
                                alwaysOverwrite)
            except BaseException as error:
                self.__log.append(u"{0}: {1}".format(page.title, str(error)))

        for child in page.children:
            self.__export(child, root, outdir, imagesonly, alwaysOverwrite)
Exemplo n.º 6
0
 def pageCount(self):
     """
     Возвращает количество страниц в дереве
     """
     startcount = 0 if self._root.getTypeString() == WikiDocument.getTypeString() else 1
     return self._getChildCount(self._root) + startcount