Loading...
Error

inpx для библиотеки Flibusta "расширенный" (сортированный список) от 02.04.2024

Страницы:   Пред.  1, 2, 3 ... 10, 11, 12 ... 15, 16, 17  След.

Ответить на тему

 | 

 
Автор Сообщение

izemail

Ждем с нетерпением!!!!

Drunkenmunky

На другом трекере, в раздаче Либрусека пользователь обнаружил баг связанный с тем, что несколько сотен имен авторов, в соответствующей таблице, содержали запятые. Из-за чего строки с этими авторами в файлах .inp обрабатывались не совсем корректно.
Так как экранирующих символов в INPX не предусмотрено, заменил запятые в этих ячейках на символ очертанием похожий на запятую, но с другим ASCII кодом. Возможны неожиданные ошибки при создании коллекции из этого INPX. Сообщайте.

Тихомолов Виктор

Разделил библиотеки, с USR проблема: MHL выдаёт "отказано в доступе". До обновления, тоже разделённые, всё открывалось без проблем. Жду совета!

Drunkenmunky

Тихомолов Виктор писал(а):

с USR проблема: MHL выдаёт "отказано в доступе".
Попробуйте остановить раздачу последних двух-трех usr-архивов. И протестируйте их.
Других "изменений" в последнее время не было.

Тихомолов Виктор

Спасибо! Попытаюсь...

Vlad02

Drunkenmunky писал(а):

На другом трекере, в раздаче Либрусека пользователь обнаружил баг связанный с тем, что несколько сотен имен авторов, в соответствующей таблице, содержали запятые. Из-за чего строки с этими авторами в файлах .inp обрабатывались не совсем корректно.
Так как экранирующих символов в INPX не предусмотрено, заменил запятые в этих ячейках на символ очертанием похожий на запятую, но с другим ASCII кодом. Возможны неожиданные ошибки при создании коллекции из этого INPX. Сообщайте.
Это я пытаюсь на питоне сделать сайт на raspberry pi и паралельно отрабатываю проверку библиотек. В авторах в одном случае найдена лишняя ":", не считая запятых - Журнал «Энергия: экономика, техника, экология»,,:
Так же найдено некоторое количество авторов с символами не принадлежащими русскому и английскому и при переходе от utf8 к CP1251 вызывающие ошибку, (Asís,Moisés,)часть вставить сюда не могу, там иероглифы или что то азиатское то что вставляется - ( प्रकाश,उदय,)
также часть авторов как
Автор Третий,,
Автор неизвестен -- Античная литература,,
Автор неизвестен,,
Автор неизвестен,История,
Автор,неизвестен,
Агент Индивидуальные Авторы,,
Анекдоты,Автор неизвестен,--
Афоризмы,Коллектив авторов,--
Биографии и мемуары,Автор неизвестен,--
Биографии и мемуары,Коллектив авторов,--
Буддизм,Автор неизвестен,--
и подобное, и часто вместо автора стоит название произведения. Так же отсутствует существующее в fb2 поле псевдонима
Ну и по мелочам, не знал куда обратится, нашел здесь и вывалил кучей ah

Drunkenmunky

Цитата:

и при переходе от utf8 к CP1251 вызывающие ошибку
Чем переходите?
В iconv() есть параметры TRANSLIT и IGNORE. Используйте второй.

Другой вариант - исправить всё вручную на самой Флибусте.
Еще можно составить отдельный список замен и применять непосредственно к INPX.

Vlad02

Изначально работаю с UTF-8
str(byte_str, 'UTF-8', 'strict').split('\x04')

проблемы в обработке при помещении в файл данных для уменьшения размера, поэтому временно отказался от использования CP1251
как пример отработки:

txt = "My name is Ståle"
print(txt.encode(encoding="ascii",errors="backslashreplace"))
print(txt.encode(encoding="ascii",errors="ignore"))
print(txt.encode(encoding="ascii",errors="namereplace"))
print(txt.encode(encoding="ascii",errors="replace"))
print(txt.encode(encoding="ascii",errors="xmlcharrefreplace"))
print(txt.encode(encoding="ascii",errors="strict"))

результат:

b'My name is St\\xe5le'
b'My name is Stle'
b'My name is St\\N{LATIN SMALL LETTER A WITH RING ABOVE}le'
b'My name is St?le'
b'My name is St & # 229 ; le' -пришлось разделить пробелами а то показывает здесь как b'My name is Ståle'
Traceback (most recent call last):
File "demo_ref_string_encode2,py", line 8, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character '\xe5\ in position 13: ordinal not in range(128)

вот и чешу репку au , что бы и имя не терять и читабельно az и в обработке не мучится ap

Drunkenmunky

Цитата:

Изначально работаю с UTF-8
Так перекодируйте сам INPX сначала.

Цитата:

при помещении в файл данных для уменьшения размера,
А чем вас базы данных не устраивают? Если нужно хранить все именно в файле, при частой смене хостинга например, SQLite всё в одном файле хранит.

Vlad02

INP файлы изначально в UTF8, поэтому в винде требуют специальных редакторов для просмотра
При плохом железе приходится держать БД в оперативке, а она тоже не очень большая.
Опять же при минимальной нагрузке на обслуживание желательно неизменяемая загрузочная система(уменьшение износа флэшь на микросд)...в общем там много ньюансов для дочерей офицера, вот и впихериваю невпихуеваемое ak
SQLite при обработке новых данных блокирует запросы на книги, склоняюсь к Fireberd но с ним у питона работа только через прокладку, может использую mariadb, ограничение на производительность arm в raspberry pi, даже апач не использую, пока остановился на lighttpd
А базу изначально держу в памяти на кортежах и словарях, хочу отработать оптимальную структуру, с последующей автоматизированной самообучающейся обработкой литературы(для приведения в порядок авторов, жанры, языки. В частности группировать разные названия одного автора как псевдонимы, с отсылкой к основному автору(наиболее полное имя) по совпадению фио и списков литературы, а то много авторов с разбросом литературы когда с полной ФИО первая часть а с ФИ вторая, не говоря уж о нерусскоязычных написаниях авторов, но с указанием русского языка в описании книги.
Пока не занимаюсь парсингом самих fb2 там тоже сложности, стихи превращаются в абзацы, как Ларин в свое время выкинул рецензии из текста, так никто их не оставляет, только в одной читалке есть и то под винду. И это все множится на зоопарк операционок и читалок.
Вот и хочу сделать такой слабо-требовательный к аппаратной части аналог флибусты с только библиотечными функциями, для домашнего использования и для маленьких библиотек, что бы можно было читать с любого железа, либо в fb2 скачивании либо в html варианте с сайта.
В принципе распбиан с питоном достаточно удобная система, осталось только руки правильно приложить. Ну а если пойдет на малинке, то на версиях дебиана и убунте с питоном сам бог велел запускать.
То есть универсальность, модифицируемость и удобство. Такая библиотечная мэшь-сеть (ну это в идеале al ah ) на OPDS и HTML
freelib на qt практически умер, и если вариант на винду32х телепается, то вариант на линукс вообще ни о чем, на маки (не пробовал), другие читалки некомфортны при количестве читателей больше 20, да и модифицируемост под нужды слабая(например захотелось кому то перевести на свой родной язык) тяжелые сайты на аппаратуре в той же деревне - ну не серьезно это, ну и опять же если на qt писать, так они скоро вообще комерциализируются, и с это не то на чем можно понятные вещи делать на ВСЕ платформы - это к вопросу выбора питона для бэкэнда

Drunkenmunky

Цитата:

При плохом железе приходится держать БД в оперативке,
Это заблуждение. Основано на непонимании для чего БД нужна индексация.

Цитата:

хочу сделать такой слабо-требовательный к аппаратной части аналог флибусты с только библиотечными функциями, для домашнего использования и для маленьких библиотек, что бы можно было читать с любого железа, либо в fb2 скачивании либо в html варианте с сайта.
PHP

Цитата:

INP файлы изначально в UTF8
Вот их, оптом, предварительно и перекодируйте. Дело пары минут.

Vlad02

Это заблуждение. Основано на непонимании для чего БД нужна индексация.
Просто попробуйте сравнить время отзыва БД на ARM когда БД на микросд и когда она же в оперативке - индексация роли не играет в данном случае

PHP
даже не смешно, количество взаимозависимостей от программно аппаратной части в PHP это тихий ужас, последующие модификации без "спагетти" когда изменив один модуль роняешь работу всей программы(или того хуже перенеся работающий вариант на другую платформу получаешь пшик) и судорожно ищешь, как это исправить? Нет спасибо, поэтому и выбран питон(плюс он основной на малинке и легко читаемый и модифицируемый, ну и главное, его можно запустить локал-хостом на любой машине, и в отличии от PHP он будет ПРЕДСКАЗУЕМО работать)

Вот их, оптом, предварительно и перекодируйте. Дело пары минут.
Так с этого и началось - сейчас отработал первый проход с последовательной распаковкой INP из INPX в оперативной памяти с заполнением БД - вот и появились артефакты в именах, языках и жанрах. Не говоря уж о том, что количество жанров не совпадает с заявленными Гробовсим и/или Лариным , и флибустой, плюс на одну и ту же книгу разные жанры, ну или простейшее - одна и та жке книга, но на либрусеке фамилии по алфавиту и полные а в флибусте вразнобой и одного отчества нек хватает - автоматом определяется ка разные. Приходится проверять на размер и CRC с последующим внесением автора с неполным отчеством, как псевдоним автора с полным отчеством(ну и соответственно фиксировать это в логе артефактов, для ручного разбора)

Извиняюсь, что ушел от темы, устранения ошибок в библиотеках INP. На данную часть могу выложить исходники, для улучшения сообществом, только не в курсе кто подобным занимается

Drunkenmunky

Цитата:

сейчас отработал первый проход с последовательной распаковкой INP из INPX в оперативной памяти с заполнением БД
Просто распакуйте на диск. Запустите iconv.
Упакуйте обратно.

kaznelson13

Drunkenmunky
Последний архив почему-то с двойным расширением требует:
f.fb2-588783-591755.zip.zip

Drunkenmunky

kaznelson13 писал(а):

Drunkenmunky
Последний архив почему-то с двойным расширением требует:
f.fb2-588783-591755.zip.zip
Да, вы правы.
Переделаю.
Извиняюсь.
Показать сообщения:    
Ответить на тему