Вы здесьУдаление дублей из архивов по 1000 книг.
Опубликовано вт, 20/01/2009 - 15:27 пользователем Bullfear
Есть такая программа myhomelib. Для работы использует архивы либрусека. В этих архивах примерно 20% дублей. В связи с этим возникает вполне закономерное желание эти дубли убрать. pkn написал для этой цели скрипт. Скрипт перловый.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
[email protected] RE:Не присылает пароль на почту 19 часов
PipboyD RE:Подайте бедному копеечку на книжку с литреса... 1 день babajga RE:Плюмаж 3 дня Саша из Киева RE:Кто сможет раздобыть и оцифровать нужные мне книги? 5 дней babajga RE:Блошкинс и Фрю. Опасное путешествие 6 дней kopak RE:О группе Дятлова. О той самой, того самого... 2 недели alexk RE:Багрепорт - 2 1 неделя babajga RE:Удивленная сова 3 недели Larisa_F RE:Серия «Квадрат» издательства «Текст» 3 недели Aleks_Sim RE:Беженцы с Флибусты 3 недели edvud RE:Прошу переформатировать, распознать, etc... 3 недели monochka RE:С 8 Марта! 4 недели babajga RE:Книга чуДОМищ 1 месяц ProstoTac RE:Подборка о Первой Мировой 1 месяц babajga RE:Нержавеющая сабля 1 месяц sem14 RE:«Уроки русского» 1 месяц Isais RE:Древний Рим. Подборка книг 1 месяц babajga RE:Отчаянная осень 1 месяц Впечатления о книгах
dolle про Шаргородский: Слишком смышленый дурачок (Боевая фантастика, Фэнтези, Попаданцы, Самиздат, сетевая литература)
05 04 Как бы попаданец в почти боярку.Оригинально, свежо и необычно. Понравилось.Отлично. Оценка: отлично!
clomeron про Суржиков: Ёлка епископа [СИ litres с оптимизированной обложкой] (Технофэнтези, Самиздат, сетевая литература)
05 04 Литрес совсем обнаглел! Уже рассказы продают по отдельности. Оценка: нечитаемо
clomeron про Суржиков: Тень Великого Древа (Фэнтези, Самиздат, сетевая литература)
05 04 Наконец-то это закончилось.))) Оценка: нечитаемо
Синявский про Юрий Марксович Коротков
05 04 На 70-м году жизни скончался Юрий Коротков, советский и российский писатель, режиссер и сценарист, оставивший яркий след в отечественном кинематографе.
Irsanta про Йон Колфер
05 04 Дей, судя по тому, что Вы огульно обвиняете в безэмоциональности всех англоязычных авторов сразу -- беда со знанием языка, Вы просто не чувствуете его. Поверьте, это лечится.
Frodo про Сердюк: "Калаш" и Калашников (История, Самиздат, сетевая литература)
04 04 Чушь и провокация, всё, как Nicout нежно любит. Оценка: нечитаемо
Igrina про Евгений Львович Ланн
04 04 Да просто скажите честно: переводчик ― говно, переводы плохие Я считала Диккенса ужасным и скучным, пока не начала читать его по-английски Сперва было трудновато, потом привыкла Но читать начала только после того, ………
obivatel про Котов: Ценитель [СИ] (Городское фэнтези, Самиздат, сетевая литература, Приключения)
04 04 Оригинальный сюжет (по крайней мере, мне аналоги не попадались), хороший слог. Мелкие логические неувязки и добавление сущностей в процессе немного подпортили удовольствие от чтения, но в целом, очень хорошо. Оценка: хорошо
Barbud про Леонтьева: Zа право жить (Современная проза, О войне)
03 04 Сойдет для принудительного внеклассного чтения в военизированном лицее имени Вошьдя и Учителя по предмету "Старые сказки о важном". Издавать надо сразу в рулонах. Оценка: нечитаемо
sem14 про Даниэль Мусеевич Клугер
03 04 Сегодня, 3/4/25, скончался и был похоронен Даниэль Клугер ז"ל благословенной памяти.
decim про Брук: Чёрный атаман. История малоросского Робин Гуда и его леди Марианн (Историческая проза, Современные любовные романы, Приключения: прочее)
03 04 Дамский софт-прон в подражание многочисленным "укрощениям дерзкого герцога". Что действие происходит не в Британии времён регентства, а в Малороссии времён гражданской войны, и за герцога тут Махно - мелочи. Те же изнасявки, ……… Оценка: нечитаемо
obivatel про Токсик: Лорд Системы 22 [СИ] (Боевая фантастика, Попаданцы, ЛитРПГ, Самиздат, сетевая литература)
03 04 Годное чтиво. 22-й том, а до сих пор не надоело. Бредятина конечно, но мир описан непротиворечиво и логика событий не хромает. Стыдно сказать, но... очень хочется знать что будет дальше. Оценка: хорошо |
Комментарии
Отв: 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
Спасибо! Перловковар из меня тот ещё...
Страницы