Вы здесьУдаление дублей из архивов по 1000 книг.
Опубликовано вт, 20/01/2009 - 15:27 пользователем Bullfear
Есть такая программа myhomelib. Для работы использует архивы либрусека. В этих архивах примерно 20% дублей. В связи с этим возникает вполне закономерное желание эти дубли убрать. pkn написал для этой цели скрипт. Скрипт перловый.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
нэнси RE:Подайте бедному копеечку на книжку с литреса... 9 часов
Larisa_F RE:Серия "Символы времени" издательства "Аграф" 2 дня tvv RE:faq brainstorm =) 2 дня Larisa_F RE:Серия "Что есть что" издательства "Слово"(чего не хватает) 4 дня Larisa_F RE:Серия "Очень прикольная книга", издательство Азбука-классика 5 дней larin RE:абонемент не обновлен 1 неделя sem14 RE:За иллюминатором (серия) - чего не хватает? 1 неделя sem14 RE:Собираем серию: "Мастер серия", издательство "Лимбус". 1 неделя sem14 RE:Серия книг «Судьбы книг» издательства «Книга» 1 неделя Larisa_F RE:Книжная серия «Сlio» издательства "Евразия" 1 неделя larin RE:Пропал абонемент 2 недели tvv RE:DNS 2 недели MrMansur RE:<НРЗБ> 3 недели Stager RE:Беженцы с Флибусты 3 недели Tramell RE:Серия "Библиотека французской литературы" (Макбел) 3 недели sem14 RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 4 недели sem14 RE:Современная корейская литература. Книжная серия... 4 недели sem14 RE:Собираем серию: "Азбука-триллер", издательство "Азбука-Терра" 1 месяц Впечатления о книгах
vudy про Никита Красавин
21 01 В углу валялись гантели, на столе стояло небольшое радио и множество книг, которые стопками лежали на полу." "Кто на ком стоял ?
decim про Дорман: Подстрочник: Жизнь Лилианны Лунгиной, рассказанная ею в фильме Олега Дормана (Биографии и Мемуары)
20 01 Одна из историй. Кто мог и хотел рассказать - рассказывает. Парадокс: люди, без которых не было бы страны - кто-то должен делать бомбу, вести расчёты, учить письму и танцу, да мало ли что ещё - и которые выживали, негласно ………
igorsai про Ричард Платт
19 01 Я восхищён книгой " Дневник пирата " Ричарда Платта. Вот как надо подавать исторический материал нашим детям, я пожилой человек и то не оторвался пока не прочитал всю книгу
mysevra про Шакилов: Каратели (Боевая фантастика, Постапокалипсис)
19 01 История полудобровольного похода отморозков (которые, естественно, за редким исключением, оказываются вовсе и не отморозками). Бойко, занятно, буду читать продолжение. Оценка: отлично!
mysevra про Слюсаренко: Кубатура сферы (Боевая фантастика)
19 01 Удивительно: некоторые подменяют патриотизм шовинизмом, считают за норму оскорбление представителей других национальностей, а потом искренне возмущаются, за что же это их не любят. Оценка: нечитаемо
mysevra про Беймон: Не слушай мамин плач [litres] [N'écoute pas Maman Pleurer ru] (Триллер)
19 01 Люблю истории, где не сразу можно догадаться, кто «виновник торжества». Не отпугнул даже стойкий привкус мелодрамы. Оценка: отлично!
Sello про Санд: Том 1. Индиана. Валентина (Классическая проза, О любви)
17 01 В пятнадцать лет, читая Санд, испытывал другие чувств: все казалось внове и интересным. Ныне замечаешь то, на что в прошлом и внимания не обратил бы: что же главных героев, по-родственному между собой связанных, писательница ………
Дей про Чернованова: Повелитель тлена [СИ] (Детективная фантастика, Любовная фантастика, Попаданцы, Самиздат, сетевая литература)
16 01 Неоднозначное впечатление. Сначала мрачновато и страшновато, но в итоге нормальная целостная картина получилась. И наконец-то хоть одна ГГ дамского романа среди алчущих её внимания выбрала нормального, что большой плюс автору. Оценка: отлично!
udrees про Шиленко: Искатель - 3 [СИ] (Фэнтези, Эротика, ЛитРПГ, Самиздат, сетевая литература)
16 01 В целом написано просто, но увлекательно про приключения в мире литРПГ – Валинор. В гарем героя добавляется кошко-девочка. Для этого в книге выделена одна иллюстрация, описывающая еще одну пассию. Книга обильно сдобрена ……… Оценка: плохо
udrees про Морале: Проклятье, с*ка! Книга 5 (Городское фэнтези, Самиздат, сетевая литература)
16 01 Хмм, заключительная книга про приключения парня с проклятиями. Правда расхождение по способностям первой книги и последней колоссальное. В пятой книги проклятиями он наверное совсем не пользуется, да и противники у него сплошь ……… Оценка: плохо
udrees про Володин: Газлайтер. Том 3 [СИ] (Альтернативная история, Боевая фантастика, Фэнтези, Попаданцы, Самиздат, сетевая литература)
16 01 Могу сказать, что неплохое продолжение истории. Написано конечно просто, описания скудные, очень много времени уделено гаремнику, но в целом читается достаточно легко и интересно. Сюжет тоже не дает пока заскучать. У автора ……… Оценка: хорошо
udrees про Атаманов: Стратег из ниоткуда (Боевая фантастика, Фэнтези, Попаданцы, Самиздат, сетевая литература)
16 01 Автор пиши еще. Книга очень захватывающая, в жанре попаданца. Введение как водится, короткое, я даже сначала думал, начало будет как у Эдмонда Гамильтона про город, который провалился в будущее. Но тут мир фэнтезийный, и хоть ……… Оценка: отлично! |
Комментарии
Отв: 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
Спасибо! Перловковар из меня тот ещё...
Страницы