Exemplo n.º 1
0
	def __init__(self, pathToDict, sameTypeSequence):

		# Конструктор родителя (BaseStarDictItem)
		BaseStarDictItem.__init__(self, pathToDict, 'dict')
	
		# Маркер, определяющий форматирование словарной статьи
		self.sameTypeSequence = sameTypeSequence 
Exemplo n.º 2
0
    def __init__(self, pathToDict, wordCount, idxFileSize, idxOffsetBits):

        try:
            list_f = [f for f in os.listdir(pathToDict) if f.endswith('pickle')]
            f = os.path.join(pathToDict, list_f[0])  # Возвращаем первый попавшийся

            with open(f, 'rb') as f:
                self.idxDict = pickle.load(f)

        except:
            # Конструктор родителя (BaseStarDictItem)
            BaseStarDictItem.__init__(self, pathToDict, 'idx')

            self.idxDict = {}							# Словарь, self.idxDict = {'иностр.слово': [Смещение_до_записи_в_файле_dict, Размер_всей_записи_в_файле_dict], ...}
            self.idxFileSize = int(idxFileSize) 		# Размер файла .idx, записанный в .ifo файле
            self.idxOffsetBytes = int(idxOffsetBits/8)	# Размер числа, содержащего внутри себя смещение до записи в файле .dict. Переводим в байты и приводим к числу
            self.wordCount = int(wordCount)				# Количество слов в ".idx" файле

            # Проверяем целостность словаря (информация в .ifo файле о размере .idx файла [idxfilesize] должна совпадать с его реальным размером)
            self.__CheckRealFileSize()

            # Заполняем словарь self.idxDict данными из файла .idx
            self.__FillIdxDict()

            # Проверяем целостность словаря (информация в .ifo файле о количестве слов [wordcount] должна совпадать с реальным количеством записей в .idx файле)
            self.__CheckRealWordCount()

            with open(self.dictionaryFile+'.pickle', 'wb') as f:
                pickle.dump(self.idxDict, f)
Exemplo n.º 3
0
    def __init__(self, pathToDict):
        BaseStarDictItem.__init__(self, pathToDict, 'ifo')

        self.iniParser = IniParser(self.dictionaryFile)

        self.bookName = self.__getParameterValue("bookname", None)
        self.wordCount = self.__getParameterValue("wordcount", None)
        self.synWordCount = self.__getParameterValue("synwordcount", "")
        self.idxFileSize = self.__getParameterValue("idxfilesize", None)
        self.idxOffsetBits = self.__getParameterValue("idxoffsetbits", 32)
        self.author = self.__getParameterValue("author", "")
        self.email = self.__getParameterValue("email", "")
        self.description = self.__getParameterValue("description", "")
        self.date = self.__getParameterValue("date", "")
        self.sameTypeSequence = self.__getParameterValue("sametypesequence", None)
        self.dictType = self.__getParameterValue("dicttype", "")
Exemplo n.º 4
0
	def __init__(self, pathToDict, wordCount, idxFileSize, idxOffsetBits):

		# Конструктор родителя (BaseStarDictItem)
		BaseStarDictItem.__init__(self, pathToDict, 'idx')
		
		self.idxDict = {}							# Словарь, self.idxDict = {'иностр.слово': [Смещение_до_записи_в_файле_dict, Размер_всей_записи_в_файле_dict], ...}	
		self.idxFileSize = int(idxFileSize) 		# Размер файла .idx, записанный в .ifo файле
		self.idxOffsetBytes = int(idxOffsetBits/8)	# Размер числа, содержащего внутри себя смещение до записи в файле .dict. Переводим в байты и приводим к числу
		self.wordCount = int(wordCount)				# Количество слов в ".idx" файле
		
		# Проверяем целостность словаря (информация в .ifo файле о размере .idx файла [idxfilesize] должна совпадать с его реальным размером)
		self.__CheckRealFileSize()
		
		# Заполняем словарь self.idxDict данными из файла .idx
		self.__FillIdxDict()
	
		# Проверяем целостность словаря (информация в .ifo файле о количестве слов [wordcount] должна совпадать с реальным количеством записей в .idx файле)
		self.__CheckRealWordCount()
Exemplo n.º 5
0
	def __init__(self, pathToDict):
		
		# Конструктор родителя (BaseStarDictItem)
		BaseStarDictItem.__init__(self, pathToDict, 'ifo')	

		# Создаем и инициализируем парсер
		self.iniParser = IniParser(self.dictionaryFile)
		
		# Считаем из ifo файла параметры
		# Если хотя бы одно из обязательных полей отсутствует, вызовется исключение и словарь не будет загружен
		self.bookName = self.__getParameterValue("bookname", None) 					# Название словаря [Обязательное поле]
		self.wordCount = self.__getParameterValue("wordcount", None) 				# Количество слов в ".idx" файле [Обязательное поле]
		self.synWordCount = self.__getParameterValue("synwordcount", "") 			# Количество слов в ".syn" файле синонимов [Обязательное поле, если есть файл ".syn"]
		self.idxFileSize = self.__getParameterValue("idxfilesize", None) 			# Размер (в байтах) ".idx" файла. Если файл сжат архиватором, то здесь указывается размер исходного несжатого файла [Обязательное поле]
		self.idxOffsetBits = self.__getParameterValue("idxoffsetbits", 32) 			# Размер числа в битах(32 или 64), содержащего внутри себя смещение до записи в файле .dict. Поле пояилось начиная с версии 3.0.0, до этого оно всегда было 32 [Необязательное поле]
		self.author = self.__getParameterValue("author", "")						# Автор словаря [Необязательное поле]
		self.email = self.__getParameterValue("email", "")							# Почта [Необязательное поле]
		self.description = self.__getParameterValue("description", "")				# Описание словаря [Необязательное поле]
		self.date = self.__getParameterValue("date", "")							# Дата создания словаря [Необязательное поле]
		self.sameTypeSequence = self.__getParameterValue("sametypesequence", None)	# Маркер, определяющий форматирование словарной статьи[Обязательное поле]
		self.dictType = self.__getParameterValue("dicttype", "")					# Параметр используется некоторыми словарными плагинами, например WordNet[Необязательное поле]			
Exemplo n.º 6
0
    def __init__(self, pathToDict, wordCount, idxFileSize, idxOffsetBits):

        # Конструктор родителя (BaseStarDictItem)
        BaseStarDictItem.__init__(self, pathToDict, "idx")

        self.idxDict = (
            {}
        )  # Словарь, self.idxDict = {'иностр.слово': [Смещение_до_записи_в_файле_dict, Размер_всей_записи_в_файле_dict], ...}
        self.idxFileSize = int(idxFileSize)  # Размер файла .idx, записанный в .ifo файле
        self.idxOffsetBytes = int(
            idxOffsetBits / 8
        )  # Размер числа, содержащего внутри себя смещение до записи в файле .dict. Переводим в байты и приводим к числу
        self.wordCount = int(wordCount)  # Количество слов в ".idx" файле

        # Проверяем целостность словаря (информация в .ifo файле о размере .idx файла [idxfilesize] должна совпадать с его реальным размером)
        self.__CheckRealFileSize()

        # Заполняем словарь self.idxDict данными из файла .idx
        self.__FillIdxDict()

        # Проверяем целостность словаря (информация в .ifo файле о количестве слов [wordcount] должна совпадать с реальным количеством записей в .idx файле)
        self.__CheckRealWordCount()
Exemplo n.º 7
0
    def __init__(self, pathToDict):

        # Конструктор родителя (BaseStarDictItem)
        BaseStarDictItem.__init__(self, pathToDict, 'ifo')

        # Создаем и инициализируем парсер
        self.iniParser = IniParser(self.dictionaryFile)

        # Считаем из ifo файла параметры
        # Если хотя бы одно из обязательных полей отсутствует, вызовется исключение и словарь не будет загружен
        self.bookName = self.__getParameterValue(
            "bookname", None)  # Название словаря [Обязательное поле]
        self.wordCount = self.__getParameterValue(
            "wordcount",
            None)  # Количество слов в ".idx" файле [Обязательное поле]
        self.synWordCount = self.__getParameterValue(
            "synwordcount", ""
        )  # Количество слов в ".syn" файле синонимов [Обязательное поле, если есть файл ".syn"]
        self.idxFileSize = self.__getParameterValue(
            "idxfilesize", None
        )  # Размер (в байтах) ".idx" файла. Если файл сжат архиватором, то здесь указывается размер исходного несжатого файла [Обязательное поле]
        self.idxOffsetBits = self.__getParameterValue(
            "idxoffsetbits", 32
        )  # Размер числа в битах(32 или 64), содержащего внутри себя смещение до записи в файле .dict. Поле пояилось начиная с версии 3.0.0, до этого оно всегда было 32 [Необязательное поле]
        self.author = self.__getParameterValue(
            "author", "")  # Автор словаря [Необязательное поле]
        self.email = self.__getParameterValue(
            "email", "")  # Почта [Необязательное поле]
        self.description = self.__getParameterValue(
            "description", "")  # Описание словаря [Необязательное поле]
        self.date = self.__getParameterValue(
            "date", "")  # Дата создания словаря [Необязательное поле]
        self.sameTypeSequence = self.__getParameterValue(
            "sametypesequence", None
        )  # Маркер, определяющий форматирование словарной статьи[Обязательное поле]
        self.dictType = self.__getParameterValue(
            "dicttype", ""
        )  # Параметр используется некоторыми словарными плагинами, например WordNet[Необязательное поле]
Exemplo n.º 8
0
 def __init__(self, pathToDict):
     # Конструктор родителя (BaseStarDictItem)
     BaseStarDictItem.__init__(self, pathToDict, 'dict')
     self.tag_re = re.compile(r'</?[a-z]*>')
Exemplo n.º 9
0
    def __init__(self, pathToDict, sameTypeSequence):
        BaseStarDictItem.__init__(self, pathToDict, 'dict')

        self.sameTypeSequence = sameTypeSequence