Вы здесьУдаление дублей из архивов по 1000 книг.
Опубликовано вт, 20/01/2009 - 15:27 пользователем Bullfear
Есть такая программа myhomelib. Для работы использует архивы либрусека. В этих архивах примерно 20% дублей. В связи с этим возникает вполне закономерное желание эти дубли убрать. pkn написал для этой цели скрипт. Скрипт перловый.
|
Вход на сайтПоиск по блогам и форумамUser menuПоследние комментарии
DGOBLEK RE:Подайте бедному копеечку на книжку с литреса... 18 часов
sibkron RE:"100 славянских романов", серия изд.-ва "Центр книги... 1 день larin RE:Пропал абонемент 1 неделя Larisa_F RE:Серия "Новые сказочные повести" издательство "Самовар" ... 3 недели sem14 RE:Серия "Символы времени" издательства "Аграф" 4 недели Larisa_F RE:Серия книг «Судьбы книг» издательства «Книга» 1 месяц tvv RE:faq brainstorm =) 1 месяц Larisa_F RE:Серия "Что есть что" издательства "Слово"(чего не хватает) 1 месяц Larisa_F RE:Серия "Очень прикольная книга", издательство Азбука-классика 1 месяц larin RE:абонемент не обновлен 1 месяц sem14 RE:За иллюминатором (серия) - чего не хватает? 1 месяц sem14 RE:Собираем серию: "Мастер серия", издательство "Лимбус". 1 месяц Larisa_F RE:Книжная серия «Сlio» издательства "Евразия" 1 месяц tvv RE:DNS 1 месяц MrMansur RE:<НРЗБ> 1 месяц Stager RE:Беженцы с Флибусты 1 месяц Tramell RE:Серия "Библиотека французской литературы" (Макбел) 1 месяц sem14 RE:Книжная серия "Жизнь в искусстве" издательство "Искусство"... 1 месяц Впечатления о книгах
udrees про Саган: Голубая точка. Космическое будущее человечества [Pale Blue Dot: A Vision of the Human Future in Space [A non fiction book] ru] (Физика, Научная литература: прочее)
22 02 Хорошая книга известного ученого астронома про освоение ближнего космоса, по большей части ближнего конечно, хотя про отдаленный он тоже пишет в конце. Сама книга конечно немного подустарела, в 1994 году писалась, уже 30 лет ……… Оценка: хорошо
udrees про Михайлов: Инфер-11 [СИ] (Боевая фантастика, Киберпанк, Постапокалипсис, Самиздат, сетевая литература)
22 02 Продолжение серии про гоблина Оди. Слог все такой же – жесткий, резкий, безжалостный. Диалоги то отрывистые как команды, то растекаются как баллады менестрелей. Описания постапокалиптического мира такие же суровые. В общем-то ……… Оценка: отлично!
udrees про Мантикор: Город, которого нет 7 [СИ] (Фэнтези, ЛитРПГ, Самиздат, сетевая литература)
22 02 Очередная хорошая книга в серии про Город. Неторопливое повествование длиной в 6 лет как бы заканчивается и вроде начинается действие. Описания в книге нормальные и диалоги тоже, нет мата, обилия сленгов, каких-то детских ……… Оценка: хорошо
francuzik про Шимуро: Знахарь I (Фэнтези, ЛитРПГ, Самиздат, сетевая литература)
21 02 Книга написана в чёрно-серых тонах, в стиле мы все умрём. Похоже это такая манера написания данного автора. В топку. Оценка: плохо
mysevra про Колосов: Выжившие хотят спать (Социальная фантастика, Научная фантастика, Триллер, Любовные детективы, Самиздат, сетевая литература)
21 02 Сложно было ожидать чего-то динамичного и нового. В принципе, достойно. Оценка: хорошо
mysevra про Корсакова: Лисье золото [СИ litres] (Ужасы, Триллер, Самиздат, сетевая литература)
21 02 Дамский роман в плохом смысле этого слова: событий мало, зато склоки на каждом шагу. Оценка: неплохо
mysevra про Торн: Диавола [litres] [Diavola ru] (Ужасы, Триллер)
21 02 Такой милый, домашний, приятно щекочущий воображение ужастик. Наверное, рассчитано на читательниц – семейной драмы больше, чем призраков. А семья там, конечно, потрясающая, узнаю брата Колю. Оценка: отлично!
vladimir1098 про Сафронов: Блокадник [litres] (Современная проза, О войне)
19 02 Не хочу обидеть автора, но ему лучше больше ничего не писать. Очень конъюнктурно, художественная ценность чуть более единицы, документальная - может быть, двойка. Зря потраченное время.
xZiminxx про Старый: Наставникъ (Альтернативная история, Исторические приключения, Попаданцы, Самиздат, сетевая литература)
18 02 такого бреда я еще не читал. учебник Мединского отдыхает . чистая чернуха заказуха. Оценка: нечитаемо
vladimir1098 про Иван Лукьянович Солоневич
17 02 Пожалуй, лучшая из прочитанных мою книг о временах Сталина. Чувствуется здоровый, ясный и твёрдый ум спортсмена. Очень впечатляет что написано языком и понятиями современными, в то время так никто не писал.
Paul von Sokolovski про Сергей Борисович Рюмин
16 02 Отлично! Хороший фэнтезийный сериал о русской глубинке, насыщенной жизни юного новообращенного мага и о чудесах, ими творимых. Память о жизни в Союзе у автора сохранилась и помогает сделать повествование реалистичным, ну - ………
mysevra про Арабов: Чудо (Современная проза, Мистика)
16 02 Вроде как описывается легендарное «Стояние Зои». И язык хорош, но такая безысходность и тоска во всём этом. Понятно, что никто нам не объяснит суть этого наказании (или благословения), и почему именно она, но хоть бы у священника ……… Оценка: хорошо |
Комментарии
Отв: 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
Спасибо! Перловковар из меня тот ещё...
Страницы