Jun. 19th, 2025

stanislavvv: (Default)
В моей nih-библиотеке поверх кучи fb2 в десятках .zip есть такая штука, как обновление данных.
В первый этап обновления входит, что все fb2 извлекаются, из них выковыриваются метаданные и обложки и сохраняются для дальнейшего использования.
Пока писал библиотеку, наступил на следующие варианты э... несоответствий в fb2:

1. файлы размером меньше, чем минимальный размер метаданных. Просто пропускаем, там интересного быть не может, сколько ни смотрел глазами — не находил.
2. кривой xml (если кто не в курсе — fb2 таки xml). Обходится использованием питоновской BeautifulSoap и, при необходимости, отдельным указанием неймспейса.
4. кривые данные в xml, к примеру, структура FictionBook сильно не там, где ожидается. Отдельные функции для поиска нужного (разные поля запрятываются по-разному).
5. криво закодированные картинки в base64 (интересовали обложки). Забил и сделал кучу try...except, среди которых декодируется:
  - как есть
  - дополненные символами = до нужной длины
  - обрезанные с конца от 1 до 6 символов (тут цифру взял с потолка)

Вероятно, список будет пополняться, так как на картинки в base64 обратил внимание только сегодня.
 


Profile

stanislavvv: (Default)
stanislavvv

June 2025

S M T W T F S
1234567
891011121314
15161718 192021
22232425262728
29 30     

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 2nd, 2025 01:45 am
Powered by Dreamwidth Studios