Вы здесьУдаление дублей из архивов по 1000 книг.
Опубликовано вт, 20/01/2009 - 15:27 пользователем Bullfear
Есть такая программа myhomelib. Для работы использует архивы либрусека. В этих архивах примерно 20% дублей. В связи с этим возникает вполне закономерное желание эти дубли убрать. pkn написал для этой цели скрипт. Скрипт перловый.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
aldan RE:Подайте бедному копеечку на книжку с литреса... 1 час
Tramell RE:Серия "Очень прикольная книга", издательство Азбука-классика 1 день Tramell RE:Серия "Символы времени" издательства "Аграф" 1 день Tramell RE:Серия книг «Судьбы книг» издательства «Книга» 1 день Tramell RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 1 день Tramell RE:Современная корейская литература. Книжная серия... 1 день nehug@cheaphub.net RE:Загадка автора 4 дня Drunkenmunky RE:/sql/ 4 дня weis RE:Прошу переформатировать, распознать, etc... 4 недели larin RE:Заплатила, а абонемента нет и скачать ничего не могу! 1 месяц sibkron RE:Серия "Библиотека французской литературы" (Макбел) 1 месяц akorish RE:Регистрация 2 месяца Larisa_F RE:Серия "Я познаю мир" издательства "АСТ, Астрель, Олимп",... 2 месяца konst1 RE:Ух, как я не люблю спамеров! 2 месяца tvv RE:DNS 3 месяца sem14 RE:«Не забыть бы тогда, не простить бы и не потерять!»-2 ... 3 месяца larin RE:Заблокирован 3 месяца konst1 RE:Серия «Интеллектуальный детектив» изд-ва АСТ 3 месяца Впечатления о книгах
mysevra про Булычев: Путешествие Алисы (Детская фантастика)
11 07 Роскошная детская книга, одна из моих любимых. Кому нужны принцессы, когда такие приключения. Оценка: отлично!
mysevra про Вудхауз: Перелетные свиньи [Pigs Have Wings ru] (Классическая проза, Юмористическая проза)
11 07 Да я просто влюблена в мир, отображённый в творчестве этого автора. «Разбито сердце, не разбито, а свинью красть интересно». Оценка: отлично!
gruin про Воронцов: Петербургский врач. Часть 1 [СИ] (Альтернативная история, Исторические приключения, Самиздат, сетевая литература)
11 07 Нудятина никакого сюжета, никакой интриги Оценка: нечитаемо
Sello про Попов: Довлатов (Биографии и Мемуары)
09 07 Как писатели - и Попов, и Довлатов (особенно) - для меня "зачётны". Но вот сама "раскатанная" другом по годам, эпизодам и событиям биография Довлатова... ммм... не то чтобы удручила (биография Бродского, описанная Лосевым, ……… Оценка: хорошо
irukan про Коллингвуд: Заморыш (Альтернативная история, Попаданцы, Самиздат, сетевая литература)
08 07 Осилил половину первой книги, замутило: Жига лежал в грязи, хрипя и пуская кровавые пузыри. Сопротивление было сломлено. Присев рядом, я, не обращая внимания на его скулеж, деловито пошарил по карманам. Пальцы вскоре ………
Oleg68 про Тарн: Девушка из JFK [litres] (Триллер, Современная проза)
08 07 На удивление, книга понравилась. Книга приправлена израильским бытом с криминалом. Оценка: отлично!
udrees про Бурдин: Проклятый Врач. Том I (Юмор: прочее, ЛитРПГ, Самиздат, сетевая литература)
08 07 Очень специфическая книга, возможно не всем зайдет, автор наверное имеет медицинское образование, или же, респект ему, очень хорошо изучил материал перед подготовкой книги. Судите сами, в книге вы встретите много специфической ……… Оценка: отлично!
udrees про Дорничев: Дворник 8-го уровня. Том 3 (Юмор: прочее, Городское фэнтези, ЛитРПГ, Самиздат, сетевая литература)
08 07 Третья книга о дворнике такая же по стилю как вторая и тоже слабее первой книги по стилю. Описания в книге скудные, редкие, незапоминающиеся, в основном происходят действия. Стиль автора можно оценить по предложению: «Разве ……… Оценка: плохо
udrees про Дорничев: Дворник 5-го уровня. Том 2 (Юмор: прочее, Городское фэнтези, ЛитРПГ, Самиздат, сетевая литература)
08 07 На мой взгляд книга получилась радикально слабее первой. Как будто другой человек писал или стиль изменился. Книгу не рекомендуется читать в голодном состоянии, так как – респект автору – он много уделяет внимания готовке ……… Оценка: неплохо
udrees про Дорничев: Дворник 1-го уровня. Том 1 (Юмор: прочее, Городское фэнтези, ЛитРПГ, Самиздат, сетевая литература)
08 07 В целом надо сказать, что достаточно годная и интересная книга для развлечения, мастерство автора растет по сравнению с ранними книгами. Уже много красочных описаний, и подробных. Если автор не с Сахалина, то плюс за изучение ……… Оценка: хорошо
udrees про Сугралинов: Жатва душ. Остров мертвых (Боевая фантастика, Постапокалипсис, ЛитРПГ)
08 07 Написано достаточно интересно, живо. Персонажи тоже не одинаковые, не картонные. Сюжет конечно не совсем оригинальный, просто зомби теперь стали бездушными, хотя физические мутации тела наличествуют. Ну и общий жанр литРПГ ……… Оценка: хорошо
Stager про Земляной: Идентификация (Боевая фантастика)
08 07 УГ. Автор, как я понял, херачит свои шедевры с помощью искусственного интеллекта. Читать это невозможно и ненужно. Оценка: нечитаемо |
Комментарии
Отв: kop-librusec-dedead - очень новая версия.
Странно... параметры ОК, вроде должно было нормально сработать... правда, не видно нормально ли загрузились SQL-таблицы... нельзя ли полностью вывод скрипта увидеть?
Убедил. Как руки дойдут - сделаю.
Отв: kop-librusec-dedead - очень новая версия.
Изволь. Распаковка таблиц заняла чуть больше 20 минут. Дальше уже пошло убиение невиновных файлов, посему скрипт был безжалостно остановлен :) И так уже половину придется перекачивать.

Кстати по поводу sql... А работать по спискам myhomelib скрипт разучился? Если да, то жаль - было намного быстрее.
Отв: kop-librusec-dedead - очень новая версия.
Распаковка - это секунды, там парсинг длинный. Но это от компупера зависит, у меня это три минуты занимает :). Но учту, спасибо, если будет возможность - попробую эту часть ускорить.
Ну извини... я честно предупреждал: "НЕ пользуйтесь этой опцией, если не уверены." ;)
Не, это вряд ли получится. Я много пользуюсь частями именно этого скрипта, с SQL-таблицами, и поддерживать два формата - эт я не потяну.
Теперь по сути: похоже, там баг в скрипте. При единственном фильтре "по языку ru" он нашел всего 5409 желаемых (wanted) книг из 123760. Не может быть чтобы в таблицах было всего 5 тысяч книг на русском. И у меня такой же примерно результат, даже ещё меньше, так что это не разница в Перле или в SQL-таблицах, а баг в скрипте. Буду искать, как только дойдут руки. Постараюсь не затягивать, но прямо сейчас - не могу.
Отв: Удаление дублей из архивов по 1000 книг.
Ну дык на настольном и у меня будет около 3-х минут. Ты на ноуте пораспаковывай :Р
Тоесть косяк в единственном фильтре или именно в фильтре по языку?
*обиженным голосом* Но ты не добавлял "... что в скрипте нет бага" :Р
Ясно, спасибо. Бум ждать, благо сейчас либрусек работает и это не так критично ;)
Отв: Удаление дублей из архивов по 1000 книг.
Баг в скрипте есть всегда. Это аксиома.
kop-librusec-dedead - 0.4.3
kop-librusec-dedead верисия 0.4.3 - прицеплена к посту.
Изменения:
1. Пофиксен злобный баг. Предыдущими версиями не пользоваться, они глюкавые на всю голову!
2. Добавлена опция -testrun : Делать всё как настоящее, но не писать/стирать никаких zip-архивных файлов.
3. Добавлена возможность перезаписывать поверх исходных файлов. Для этого надо чтобы -do (dirout, выходной директорий) показывал туда же где лежат исходные зипы (dirzip), и присутствовала опция -removeoriginals.
Отв: kop-librusec-dedead - 0.4.3
Спасибо, щас потестим :)
Отв: kop-librusec-dedead - 0.4.3
Меня терзают смутные сомнения... На первый взгляд все нормально, однако почти в каждом архиве скрипт находит примерно 250-300 дублей. Так и должно быть? Архивы уже были обработаны старой (безглючной) версией скрипта.
Wanted total 96695
Books total 123760
to be squeezed 27065
Или он просто повторно обьединичивает единички? Тогда все в порядке.
Из замеченного: быстрее стали грузится таблицы, это гуд :)
А вот еще что.
WARNING: Bad member name: "Ketrin_A_List_Etika_bl**stva.fb2" zipf="16988-117987"
C этими файлами можно что-то сделать?
Отв: kop-librusec-dedead - 0.4.3
Повторно объединичивает.
Это тебе показалось :) там ничего не делалось.
АХЕЗ. Звёздочки в имени разрушают перловые regexp-ы. Я пока не могу научиться как бы их правильно сравнивать.
Отв: kop-librusec-dedead - 0.4.3
Странно. Тем не менее факт. Тогда одно из трех:
- Я сонный, поэтому думаю медленнее :)
- Они эээ... Закешировались виндой, ибо ноут уже недели две не перезагружался.
- Что третье? Говорю же - сонный я :Р
Отв: kop-librusec-dedead - 0.4.3
Можно экранировать переменную - /^\Q$membername\E$/
А можно использовать строковое сравнение вместо regexp (должно быть быстрее) - grep {$_ eq $membername} @FN_G;
Отв: kop-librusec-dedead - 0.4.3
Спасибо! Перловковар из меня тот ещё...
Страницы