Вы здесьУдаление дублей из архивов по 1000 книг.
Опубликовано вт, 20/01/2009 - 15:27 пользователем Bullfear
Есть такая программа myhomelib. Для работы использует архивы либрусека. В этих архивах примерно 20% дублей. В связи с этим возникает вполне закономерное желание эти дубли убрать. pkn написал для этой цели скрипт. Скрипт перловый.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
aldan RE:Подайте бедному копеечку на книжку с литреса... 10 часов
Larisa_F RE:«Юмористическая серия» 2 дня Larisa_F RE:Собираем серию: "Азбука-триллер", издательство "Азбука-Терра" 2 дня Larisa_F RE:Серия "Символы времени" издательства "Аграф" 2 дня larin RE:Оплатил, но абонемент не отображается 4 дня nehug@cheaphub.net RE:DNS 1 неделя alexk RE:Багрепорт - 2 1 неделя sem14 RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 2 недели Isais RE:Семейственность в литературе 2 недели Violontan RE:Жан Батист Мольер воскрешенный 3 недели sem14 RE:Гонкуровская премия 3 недели Dead_Space RE:Беженцы с Флибусты 3 недели Саша из Киева RE:Приключения белочки Рыжки 1 месяц alex-from RE:Оплатил два раза, но абонемента нет 1 месяц Kiesza RE:На 78-м году жизни скончался советский и российский... 1 месяц Paul von Sokolovski RE:Бушков умер. 1 месяц lemma7 RE:Серия «Интеллектуальный детектив» изд-ва АСТ 1 месяц Isais RE:Издательство "Медуза" 1 месяц Впечатления о книгах
petr1464587 про Вязовский: Пепел на губах [СИ] (Фэнтези, Попаданцы, Самиздат, сетевая литература)
16 12 Это неудачный черновик? Кто эту дрянь выложил? Оценка: нечитаемо
Дей про Шалашов: Призраки Черного леса (Альтернативная история, Героическая фантастика)
16 12 Лучше читать "Невесту наёмника", там нет этой странной ерунды с попаданцем. Оценка: неплохо
Iron Man про Гессен: Во глубине сибирских руд... (Биографии и Мемуары)
15 12 Восхитило содержание узников "кровавого царизма": «В Чите рудников не было. Здесь работа была другая, более легкая: декабристы чистили казенные хлевы и конюшни, подметали улицы, копали рвы и канавы, строили дороги, мололи ………
mysevra про Каку: Физика невозможного [Physics of the Impossible: A Scientific Exploration into the World of Phasers, Force Fields, Teleportation, and Time Travel ru] (Физика, Научпоп)
15 12 Читается легко, как художественное произведение. Автор – настоящий энтузиаст своего дела, способный объяснить сложные теории простым языком. Самое замечательное то, что книга написана не сегодня и уже многие «предсказанные» ……… Оценка: отлично!
mysevra про Балашова: Фатальное прикосновение (Исторический детектив)
15 12 Начало довольно бодрое, а потом увязли в подробностях и отступлениях. Оценка: неплохо
mysevra про Лондон: Великий кудесник [The Master of Mystery ru] (Классическая проза ХX века)
15 12 Сурово так: методы воспитания детей, способы экзорцизма, да и плата за чудеса. Мне понравилось. Оценка: отлично!
nik_ol про Донцова: Дочь Скупого Клопа (Иронический детектив, Дамский детективный роман)
14 12 Спасибо огромное, что выложили наконец-то! Чмоки) Оценка: хорошо
Kromanion про Лагин: Старик Хоттабыч [litres] (Советская классическая проза, Сказка)
14 12 Старик Хоттабыч почти целиком спижжен с Энсти "Медный кувшин", и отличается лишь противоестественными "острополитическими" вставками, которые, видимо Лагин менял согласно флюгеру внешнеполитического курса. Сами вставки инородны ………
Никос Костакис про Вячеслав Солдатенко (Слава Сэ)
14 12 Я больше классиков люблю: Лёву Тэ или Федю Дэ...
Никос Костакис про Калмыков: На пути «Тайфуна» [СИ] (Альтернативная история, Попаданцы, Самиздат, сетевая литература)
12 12 Ни один нормальный человек не поверит, что убийцам и грабителям могут дать в руки оружие. И уж тем более, ни одно правительство не пойдет на такой шаг". __________________________ Ну да, ну да...
Isais про Плещеева: Батареи Магнусхольма (Исторический детектив, Шпионский детектив)
11 12 Хотя мне давно отвратительно откровенное имперство автора, перетекающее в путинославие, не могу не признать — исторические детективы у нее получаются. И исторические лучше, чем детективы, потому что детективы у нее случаются ……… Оценка: хорошо
123_abc про Вадим Юрьевич Панов
10 12 Аркада. Вся трилогия с оценкой "отлично". А с учетом времени её написания ещё и "плюс" сверху. Оценка: отлично с плюсом |
Комментарии
Отв: 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
Спасибо! Перловковар из меня тот ещё...
Страницы