Pull to refresh

Comments 135

Вот для таких вещей и изобретался интернет.

pip3 install git+https://github.com/yaroslaff/nudecrawler

А также для вот такого - чтобы про прямой ссылке из репозитория запускать невесть что на вашем контьюпере под видом голых деbушек. Кстати, вы забыли sudo в начале добавить.

Hidden text

Кстати, про sudo это был сарказм. А вот не сарказм: спешу напомнить что после установки пакета по прямой ссылке из репозитория вы можете запустить себе неизвестно что. Даже если прямо сейчас там просто краулер голых девиц, то ничто не помешает автору (кроме высоких моральных устоев) приделать еще и краулер ваших cookie из браузера, паролей и прочих биткоин-кошельков на диске и в домашней сети.

Что делать: запускать хотя бы в docker-контейнере, а лучше на виртуалке.

Или через sudo (не сарказм), но от nobody или через отдельного юзера. nudecrawler'у не требуются никакие особые права.

после установки пакета по прямой ссылке из репозитория

а из pypi что-то меняется?

В общем-то нет, не меняется. Если только зафиксировать коммит из репозитория и проверить весь код в этом коммите - тогда еще на что-то можно надеяться.

Но ведь пока вы будете этим заниматься - уже всех голых девушек из интернета скачают..

Я в целом разделяю вашу паранойю, но у меня вопрос. А как вы пользуетесь миром javascript'а и его npm и composer? Там же ведь каждый пакет тащит за собой целое дерево из сотен пакетов, и все с гитхаба, никем не проверяются, не сертифицируются, все на совести авторов пакетов.

Да, так и пользуюсь. Фронт собирается в докере, а уж что там оно скачало - приходится верить npm'у. Версии зафиксированы где можно и не так много всего в проекте тянется. Но параноик внутри фейспалм каждый раз делает.

написано же что стырит ваши пароли: "10. Ну и паролей к разным ресурсам"
Потом скажут что вас предупреждали заранее :-)

Наконец-то появился docker образ, о котором вы говорили :-)

sudo docker run --rm -v /tmp/run:/work yaroslaff/nudecrawler nudecrawler "Sasha Grey"

Не написано как он собственно ищет. Если у каждой странички уникальная ссылка и они нигде не засвечена, то как о ней узнаёт ползун?

Адрес страницы зависит от заголовка и для страницы с заголовком "Саша Грей" он будет иметь вид, например:

https://telegra.ph/sasha-grey-01-02-123

01 - "сегодняшний" месяц, когда создается страница. 02 - число. И если https://telegra.ph/sasha-grey-01-02 уже существует, то телеграф добавляет еще "счетчик" -01 если и это занято, то 02, итд.

Если ползуну указано искать "Саша Грей", он проверяет все сегодняшние странички с этим заголовком, затем вчерашние и так на -d дней назад.

Если вдруг, страница с индексом 100 будет, а 101 нет - ползун все равно попробует 102 и далее, пока не будет "дырка" в -f страниц подряд. (исходно 0, но можно повысить)

Поэтому, спрятать женщину от ползуна можно двумя способами:

  • Использовать очень необычный заголовок (как пароль, чтобы он не мог быть угадан по вордлисту)

  • Создать большую "дырку" в счетчиках, например, если ползун будет запущен с -f 10, а дырка будет в 20 страниц, которых нет (например с 100 по 120), то 121 он уже не будет пробовать.

your message has max value, but can be decided by own company, but is another story, thank you

спасибо за такое внимание, абьюзеры, наверное так вы чувствуете свою значимость :-*

Как-то раз наткнулся на телеграфе на страничку с нюдсами, но самой интересной была ссылка в конце страницы, переходишь по ней, а там опять много нюдсов и внизу штук 20 мутных URL и ещё одна ссылка, которая снова ведёт на много нюдсов и ещё один список мутных URL, и снова ссылка на аналогичную страницу.

Предположил, что это какой-то способ сообщать центральные сервера какому-нибудь ботнету, а адреса этих серверов прячут вниз страницы, чтобы их можно было увидеть только пролистав нюдсы.

Не знаю, мне кажется это избыточно сложным. Лучше вот как тот пароль из статьи - страничка с какой-то белибердой, которую только ботнет может расшифровать. Ну и в Телеграф сложно через долгое время изменять содержание страниц, если кука протухла - то все, даже автор уже не может изменить. Rentry.co в этом плане лучше.

Похоже на какие-то сео-трюки для поднятия в поисковиках.

Например, однажды NudeCrawler мне принес вот эту страничку (Критерием интересности было либо сколько-то NSFW картинок, либо любое видео.)

Настоятельно рекомендую вывесить предупреждение к этому ролику. Яркие вспышки, могут вызвать эпилептический припадок, у любознательного человека.

Ну как, как так получилось что по этой ссылке не рикрол?

Вспоминаются строки классика:


Но в сети как назло,
Чёрный баннер живет.
Кто увидит его,
Моментально умрёт.

(Беломорс — Чёрный баннер)

подсматривать за роботом, как он подсматривает за не-очень-публично выложенной картинкой, где фотограф подсматривает как девушка переодевается

Прямо как из анекдота:

Анекдот

Русского ...т на партсобрании
за то, что посмотрел американский фильм
про то как армянин ...т еврея
который подсматривает в замочную скважину
за французом, который ...т свою женщину

В доме, который построил Джек.

Название я забыл. А сюжет простой, он в анекдоте 3 строкой

С какой интонацией следует читать этот комментарий — ужаса или надежды?

Я всегда стараюсь придерживать нейтральной интонации в комментах.

Если вам так уж интересно, то откройте уже для себя скрытосети. Например в русскоязычной вики в i2p есть много разной интересной информации вроде коллекций магнетов на несколько терабайт.

UFO just landed and posted this here

а вы это из японии спрашиваете или из австралии ?

Забавно, статью уже кто-то скраулил в Веб-Архив, друг подсказал.

Думаете, с хабра удалят? Надеюсь, что нет - я в поддержке спрашивал, для каких хабов она подходит (кстати, хаба для Adult/NSFW нет. Сфера есть, а хаба нет). Надеюсь, что останется. Но в крайнем случае - еще гитхаб есть.

А для параноиков - лучше форкнуть репозиторий и склонировать его к себе на свой комп.

Я тоже надеюсь, что не удалят, но две копии на разных ресурсах - это всё же две копии (и нет, это не я, до меня успели сделать). Спасибо за статью, кстати.

хаба для Adult/NSFW нет

Есть один хаб, но на другом сайте)))))

Так и становятся линуксоидами! :-)

Думаю, надо начать с того, чтобы поставить на винду Python и PIP. Затем так же. Но как там на винде с docker - я не знаю. Может проще запустить на винде виртуалбокс с линуксом и там поставить?

Так в винде есть же свой собственный линукс с покером и Торвальдсем. WSL называется.

паук для поиска голых женщин

Господи, но зачем?! Во-первых, порнографии и сексуального контента и так вокруг слишком много, а вы хотите еще и искать? Может вы еще платите за нее?

Во-вторых, порнография разрушает мозг, у многих людей это становится серьезной зависимостью. Нужно не искать это, а изобретать действенные способы, чтобы ее избегать.

You must be fun at parties.

Вы на этих своих пати смотрите порнографию? :)

Нет, этим мы занимаемся на оргиях

Парторг на парторгии

Мозг не разрушает вроде бы, скорее вызывает адаптацию и снижение возбуждения на вид наготы. То же происходит у мужчин гинекологов или нудистов.

UFO just landed and posted this here

сочувствую мужчинам гинекологов )

UFO just landed and posted this here

Ох... Минздрав еще никого не убедил бросить курить, но многим испортил удовольствием от курения.

Так что нет, разрушает и отупляет.

только в приведённой вами цитате «Alternatively, it could be a precondition that makes pornography consumption more rewarding».


классическое: наличици корреляции не говорит ничего о направлении причинно-следственной связи, и даже не гарантирует её наличие.

UFO just landed and posted this here

При чём тут сама порнуха? Это же спорт! Поиск! Автоматизация!

Поиск паролей тоже вызывает зависимость?

Конечно! Стоит только увлечься, а потом устроишься и будешь ходить на работу наждый день, пароли восстанавливать и катриджи заправлять.

Я думаю поиск голых женщин, тут не основная цель. А вот сама тема поиска скрытого куда интереснее)

В свое время писал парсера разных файлообменников, типа iFolder, где в конце просто менялся id файла.

Да, соглашусь. Голая женщина привлекательная не "мясом", а именно игрой, охотой, предвкушением, без гарантии успеха, когда что-то ловится-ловится, а потом вдруг поймалось, удачей, когда ух и что-то увидел (ветер юбку задрал). И хочется составить карту ветровых потоков в городе (с GPS, СУБД, REST API, аутентификацией, удобным динамичным фронт-ендом, чтобы совместно ее наполнять).

Голые женщины без этого элемента игры - экземпляры для гинекологии.

UFO just landed and posted this here

Лучше бы платил - было бы дешевле. Стоимость трудочаса опытного программиста, помноженное на то, сколько времени ушло на паука - хватило бы, чтобы всем читающим это оплатить пожизненный абонемент на порнхаб.

Но мы же с вами вроде бы все тут IT-шники, все работаем в сфере автоматизации, вычислений и... принятия рациональных решений. Значит, как хорошие профессионалы, должны прежде всего понимать границы действия этих тем.

Так вот, мое мнение тут такое. Мы живем в интересное время. Сейчас вычислительных ресурсов даже робота-пылесоса достаточно чтобы лучше нас принять многие решения, безошибочно просчитать все. (А если даже недостаточно, то в следующей модели, через 5 лет - будет достаточно). Робот гораздо лучше меня может, например, совершить покупки продуктов в гипермаркете - он не пропустит товар из каталога (я-то могу глазами не заметить), учтет все скидки, и соберет такую корзину, чтобы и для здоровья было вкусно, и учитывает мои предпочтения (например, я редко ем рыбу), и разнообразно, чтобы не повторять то, что ел недавно и при этом еще и в бюджет хорошо уложится. Если робот-пылесос это лучше меня знает и лучше меня вычисляет - зачем тогда я!?

Мне кажется, тут слово "надо" очень важное. Словом надо - мы помечаем работу. То что НАДО. (Даже если это тяжело, скучно, противно, может даже иногда не очень этично или не очень законно, но, блин, все равно - надо). Вот для работы - есть роботы. Пылесосит пусть робот. И по мере развития человечества, все больше "надо" можно перегрузить на них. А человек - для другого. Не для того что надо по трезвому расчету, а для того что хочется. А у многих вся жизнь проходит в исполнении множества разных "надо".

Смысл жизни не может формулироваться через "надо" (для чего-то), потому что тогда это делает его лишь средством. Конечный смысл всегда иррационален, может даже вреден по видимым-бытовым критериям. А уже на пути к нему могут быть много рациональных "надо". Мне вот надо было снова разобраться, как HTML парсить через BeautyfulSoup, а для этого надо было найти гайды по нему и примеры использования. Но все эти обоснованные "надо" были ради цели, у которой нет обоснования, просто мой каприз, желание, шило в попе.

Как у Шукшина:

— Накормить себя человек никогда не забудет. Вот если бы он не забыл еще хорошую песню спеть, сказку рассказать, черта с рогами выдумать. Вот если бы он не забыл!..

Вот nudecrawler - это мой черт с рогами. Всего лишь один из мимолетных смыслов жизни. Делать то, что хочется, к чему есть вдохновение, азарт, божья искра. Это весело и интересно. В жизни нет ничего важнее этого.

И не говорите! Ужасы просто!
А ещё и волосы на ладонях...

А, так это от этого!??

Не знаю, никогда с ними не работал, но мне кажется, что наверняка может. Там же "почти unix?". Попробуйте поставить python и pip (это типовая задача, должно быть миллион гайдов). Если получится - то дальше все так же, как с Linux.

Через пайтон 3.10 вроде запустился. Через 3.11 не заработал

Поставить вопреки nudepy получилось? После установки, где-то должен быть файл nudecrawler. Где он на винде - я даже представить не могу.

Да это не винда, это макось. Поставить получилось если использовать python3.9, а не 3.11, но вот найти файл не могу.
Хотя вот если так делать, то что-то пытается запустить:


[$]  python3.9 -m nudecrawler                                     
/opt/homebrew/opt/python@3.9/bin/python3.9: No module named nudecrawler.__main__; 'nudecrawler' is a package and cannot be directly executed

UPD: а, где именно лежит нашел.


ls /Users/vvzvlad/Library/Python/3.9/lib/python/site-packages/nudecrawler/
drwxr-xr-x vvzvlad staff  15 KB Sun Apr  2 05:54:25 2023  __pycache__
.rw-r--r-- vvzvlad staff  54 B  Sun Apr  2 05:54:25 2023  verbose.py
.rw-r--r-- vvzvlad staff  15 B  Sun Apr  2 05:54:25 2023  version.py
.rw-r--r-- vvzvlad staff 588 B  Sun Apr  2 05:54:25 2023  localimage.py
.rw-r--r-- vvzvlad staff 1.1 KB Sun Apr  2 05:54:25 2023  cache.py
.rw-r--r-- vvzvlad staff  95 B  Sun Apr  2 05:54:25 2023  __init__.py
.rw-r--r-- vvzvlad staff 9.2 KB Sun Apr  2 05:54:25 2023  page.py
.rw-r--r-- vvzvlad staff 352 B  Sun Apr  2 05:54:25 2023  unbuffered.py
.rw-r--r-- vvzvlad staff 293 B  Sun Apr  2 05:54:25 2023  exceptions.py
.rw-r--r-- vvzvlad staff 2.3 KB Sun Apr  2 05:54:25 2023  remoteimage.py

Легче не стало, при запуске init ругается так:


python3.9 __init__.py                                           [7:02:56]
Traceback (most recent call last):
  File "/Users/vvzvlad/Library/Python/3.9/lib/python/site-packages/nudecrawler/__init__.py", line 1, in <module>
    from .page import Page
ImportError: attempted relative import with no known parent package

UPD: я, в общем, скачал просто с гитхаба и сделал python3.9 ./bin/nudecrawler. Так работает, но с pip-пакетом явно что-то не то происходит.

Это вы нашли, где он хранит питоновский пакет nudecrawler, но не исполнимый скрипт.

Раз вы скачали репозиторий, там в bin/ лежат исполнимые скрипты, видите, как они называются. Можете их поискать в системе, посмотреть, куда у вас pip их положил после установки.

Вплоть до: find / -name detect-image-nsfw-api.py

Можешь чуть подробнее рассказать как ты это сделал, просто я кручусь как уж на сковородке, а ничего не устанавливается и запускаться не хочет(

Гораздо проще запустить через docker.

А нельзя ли вместо медленных нейронок для определения наготы прикрутить алгоритм, когда-то придуманный Крисом Касперски - если на изображении много пикселей попадает в определённый цветовой диапазон, то там с высокой вероятностью голое тело? Ну или хотя бы прикрутить его как входной фильтр, а там уже пусть нейронка решает, нюдсы или не нюдсы.

К ползуну все легко прикручивается. Сделайте скрипт, который проверяет файл из параметра и возвращает 1 если там "что-то может быть голое". Кстати, может быть с этими пакетами идет и готовый скрипт для этого? Тогда можно прямо его использовать через --detect-file PATH

Но ползун и так достаточно быстро находит много страниц, поэтому скорее нужны более жесткие параетры фильтрации, чтобы иметь не десятки тысяч сомнительных страница, а мало, но очень интересных. А у такого метода - много false positive. Мне кажется, я использовал какой-то подобный в начале разработки, но я десятки детекторов перепробовал, сейчас запутался в них. Может у вас есть ссылка на тот, о чем вы говорите (лучше питоновский)? Возможно я бы его и прямо внутрь встроил тогда.

Но я помню, как один из детекторов нашел мне какую-то страницу где были и голые и не голые фото (прямо как я люблю), я туда полез, а там картинки про возлюби Господа нашего и такое огромное желто-белое сияние от этих букв исходит.

Это может заодно отсечь разнообразную эротику в белье (там собственно тело занимает не бОльшую часть, но в этом то и фишка!), и оставить только скучные половые сношения

Посмотрел чуть глубже, встроенный тупой-медленный детектор (на nude.py) именно так и работает (потому и не тянет за собой большой и толстый tensorflow)

Просит c++ установить по этой ссылке

error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/

А там меня просят пакеты на 8 гигов скачать

windows user

Может можно как-то проще решить?

Вы про что, по какой ссылке? NudeCrawler'у Visual C++ точно не нужен. Прямо вот совсем точно.

А питону скорее всего нужен. Если не питону, то нативным либам (Tensorflow как минимум на плюсах)

Tensorflow в зависимостях нет, я специально его не включал (уж очень "дорого" выходит). В базовом варианте (со встроенным простым детектором) - без него работает. Да и с докеровскими контейнерами он не нужен (он внутри них). Нужен только если хочется через NudeNet фильтровать.

Нет, самому Питону под Виндой никакой Visual C++ для работы не нужен (несколько dll-файлов нужны, но они включены в инсталлятор). Обычно ругается, когда пытается нативную библиотеку собрать из сорцов. Если библиотека установилась, и уже сама чего-то хочет — скорее, потребует какой-нибудь "visual studio redistributable", а не "build tools".

Оно у вас "pure Python" или таки нет? Если нет, то всё понятно. Если да, то, возможно, товарищ установил самый-самый последний Python, под который ещё не запилили каких-то библиотек, и pip install, вместо установки бинарника, пытается собрать из сорцов. В таком случае надо попробовать либо задаунгрейдить Python, либо найти бинарную библиотеку под установленную версию где-нибудь тут. (UPD: впрочем, там последнее обновление было почти год назад, так что по-любому Питон даунгрейдить.)

Да, чистый питон. зависимости есть, но они тоже питоновские. Он разве что nude.py использует из "странного". Не знаю, как он реализован.

Так у nude.py в зависимостях Cython — он, вроде, нативные библиотеки собирает из питоновских, ему и надо, небось.

Я в вопросе установки на винде, вряд ли могу помочь. Как вариант - запустить в виртуалке (под VirtualBox) "честный" linux. Или под Docker - вроде он под виндой работает. nudecrawler в докере точно запустится.

Еще есть вариант, но более трудоемкий, форкнуть репозиторий, убрать из него (из setup.py и из remoteimage.py) - это всего 3 строчки, собрать свой урезанный пакет и его поставить. Но тогда все равно придется что-то придумывать для фильтрации. NudeNet ставить например или что-то свое прицепить.

Не надо VirtualBox, Hyper-V работает куда стабильнее.


Но он тоже не нужен, есть же WSL2. Докер, к слову, именно его и использует для запуска линуксовых контейнеров.

Можно попробовать установить gcc, там меньше. Есть шанс, что его заметят и будут использовать вместо vc++. Правда, gcc нормальный под винду найти — тот ещё квест, большинство простых путей ведут к установке MinGW 2, в который … по умолчанию gcc не входит.

До публикации, у ползуна было 4 звезды (я вообще нигде не упоминал, просто магия сисек приводила к нему людей). Не прошло и суток, сейчас у ползуна 45 звезд!

Всю годноту на GitHub стоит тащить на reddit. У моей репы https://github.com/amaargiru/pyroad (roadmap Python-разработчика) даже после публикации на Хабре было ~15 звёзд, после публикации на Reddit (https://www.reddit.com/r/Python/comments/z3gntf/detailed_python_developer_roadmap/) - 150. Сейчас, спустя 4 месяца, уже > 250, потому что люди с Reddit тянутся практически бесконечно.

А можете посоветовать сабреддит, куда можно анонс nudecrawler сделать?

В r/Python, конечно. У вас же у этой статьи стоит тег "Python", недовольных, кажется, нет :)

Там еще и пользователи в комментариях посоветуют, куда еще запостить, и сами разнесут благую весть по другим сабреддитам.

Возьму эту статью за основу своей курсовой))

Можно, например, сделать поисковик для находок, или совместную обработку (но с кросс-проверкой). Поисковики для телеграфа есть, но они только по тексту, без фото-видео и тем более без классификации фото.

Последняя на сейчас версия 0.2.3

Сильно ускорена обработка повторных страниц:

  • Есть кэш картинок по URL и по SHA1 суммам. (нам не приходится повторно выполнять медленную обработку картинок, если мы раньше ее видели)

  • Страница перематывается если она совпадает сразу по имени, дате и Content-Length с предыдущей. Это решает проблему, когда одна и та же страничка со множеством картинок повторяется несколько тысяч раз (Да, такое бывает. И даже с кэшем это долго. "Перемотка" - кораздо быстрее. Там где прежняя версия могла работать неделю, последняя за 10 минут эту западню обходит ).

А как можно поставить без nudepy? Он что-то не хочет собираться на m1: skin_classifier.c:196:12: fatal error: 'longintrepr.h' file not found

форкнуть репозиторий на гитхабе себе, и вырезать его упоминания (он там очень слабо привязан, всего в двух файлах по строчке-двум - setup.py и remoteimage.py). Затем, можно даже не устанавливать nudecrawler, а прямо из репозитория его запускать. Только сначала сделать:

export PYTHONPATH=.
export PATH=./bin:$PATH

А запускать через python bin/nudecrawler

(хотя не знаю, на винде как это будет).

Если такая ошибка на пайтоне 3.11, то попробуйте на 3.10

да-да, у меня 3.9 стоял, на нем все ок.

Библиотека tensorflow падала с "Illegal instruction" на моем древнем Xeon E5620, пересобрал из исходников и все заработало. На что только не пойдешь ради сись науки, конечно же.

Сравнил через (с разными детекторами)

bin/nudecrawler --url1 https://telegra.ph/anya-03-27

nudepy (дефолт) видит 3 голых картинки, nsfw-api только одну (вариация на тему группового glory hole).

А я глазами почти в каждой вижу пред-эротическую ситуацию.

Но после множества однотипных сливов моделей, такая эротика даже радует глаз! :-)

каким путем, кстати, запустили nudecrawler? на MacOS, Windows?

На макоси, скачал с гитхаба и сделал python3.9 ./bin/nudecrawler. Пакет так и не удалось победить.

А nudepy вырезали из него? (там несколько строчек) или поставили как-то?

А выше писал ж: в последней версии питона там что-то хочет собраться и крашится, если взять 3.9/3.10, то все норм. Вот я так и сделал: "python3.9 -m pip install --user git+https://github.com/yaroslaff/nudecrawler", и он успешно все зависимости поставил, включая nudepy с его бинарниками.

Почти! Надо 28 открывать!

ubuntu 22.04

1. команда pip3 install git+https://github.com/yaroslaff/nudecrawler успешно отработала

2. pip3 list|grep nudec == nudecrawler 0.1.0

3. nudecrawler: command not found

Скорее всего pip3 ставит скрипты в каталог, который у вас не в PATH, посмотрите в ~/.local/bin

Если их там нет, сделайте find / -name nudecrawler или find / -name detect-image-nudenet.py

путь ~/.local/bin, куда ставятся скрипты - находятся в PATH и там есть разные скрипты, но именно nudecrawler там нет

find ~ -name nudecrawler находит только ~/.local/lib/python3.10/site-packages/nudecrawler

а find / -name detect-image-nudenet.py ?

У некоторых работает с python3.9 но не работает с более свежими версиями. Можете попробовать в виртуальной оболочке (virtualenv) поставить с этим питоном.

Или - скачать из GIT и запустить сразу из репозитория. Надо будет только сделать:
export PYTHONPATH=.

и запускать bin/nudecrawler

  1. искать по всему "/" бесполезно - я ставил только своему пользователю

  2. скачал вручную с github - начало работать, но поменял "#!/usr/bin/env python" на "#!/usr/bin/env python3" т.к. нет в ubuntu 22.04 просто python

  3. как долго должен происходить поиск ? у меня для получилось так:

    $ ./nudecrawler -a desktop
    INTERESTING (ALL) https://telegra.ph/desktop-03-30 (3.08s)
    Total images: 7

    Finished 1 (skipped 0) words in 101.62 seconds, found 1 pages

У меня примерно такая же скорость. Можете добавить -v чтобы видеть, как идет работа. Примерно, по секунде на то, чтобы проверить адрес. (Сейчас пока все это делает последовательно, не параллельно).

Кстати, по 2 пункту - есть пакет python-is-python3 чтобы создать нужный симлинк. (ну или ручками). Я сам про этот пакет недавно узнал (в дебиан - та же фигня).

2.1 пакет python-is-python3 по умолчанию не стоит, и не очевидно что пользователь должен его ставить

2.2 полагаю, что если nudecrawler работает только на python3, то именно его и надо писать в env, например так и пишут в /usr/lib/python3.10 или в /usr/src/linux-headers-5.15.0-67/scripts

Четвертого еще нет. А второй уже несколько лет как устарел. В setup.py прописаны ограничения именно на третий (то есть, на второй оно не поставится). Но вообще с этим некоторый бардак сейчас, при установке через PIP он (PIP) интерпретатор сам перезаписывает по своему.

Было бы в итоге хорошо для пользователей популярного LTS дистрибутива ubuntu 22.04 чтобы установка через pip проходила полностью успешно, без лишних телодвижений - и скрипт nudecrawler бы был на месте и питон нужный бы вызывался в нем )

xenon@mir:~$ sudo docker run -it ubuntu:latest
root@083b16769557:/# cat /etc/issue
Ubuntu 22.04.2 LTS \n \l

root@083b16769557:/# apt update

...

root@083b16769557:/# apt install python3-pip

...

root@083b16769557:/# ls -l /usr/bin/python
ls: cannot access '/usr/bin/python': No such file or directory

root@083b16769557:/# ls -l /usr/bin/python3
lrwxrwxrwx 1 root root 10 Aug 18 2022 /usr/bin/python3 -> python3.10

root@083b16769557:/# pip3 install -U nudecrawler
Collecting nudecrawler

....

root@083b16769557:/# nudecrawler -v -a test
... IGNORE https://telegra.ph/test-04-06, Skip because total images 0 < 5
IGNORED (Skip because total images 0 < 5) https://telegra.ph/test-04-06 (0.0s)
Total images: 0

root@083b16769557:/# head -n1 /usr/local/bin/nudecrawler
#!/usr/bin/python3

Почему-то у меня работает (без /usr/bin/python). Хотя в репозитории, сами посмотрите, используется строчка #!/usr/bin/env python . (при установке пакета должна сама записаться на нужный интерпретатор)

Даже от обычного юзера попробовал поставить:

test@083b16769557:~$ pip3 install nudecrawler

...

test@083b16769557:~$ head -n1 .local/bin/nudecrawler
#!/usr/bin/python3

Вот такая магия... в docker контейнере почему-то нормально работает. Вы же из git, как я помню запускаете, не через pip. Но у меня и nudecrawler не потерялся, установился куда положено (/usr/local/bin если от рута или ~/.local/bin от юзера).

Но в ближайшие дни хочу Docker версию допилить, чтобы прямо из контейнера работало все - будет проще :-)



Помогла установка с ключом U вот так: "pip3 install -U nudecrawler" - при этом и скрипт появился, и в нем "#!/usr/bin/python3" и версия 0.3.3 !

Немного странно, потому что -U - означает обновить пакет. Без -U он просто не стал бы устанавливаться, если уже есть даже более старая версия. А в остальном - это такая же установка.

И как это запускать? Пробовал и под виндой и под wsl. Я понимаю тема для питонистов, но не плохо бы написать инструкцию и для людей.

Так как бы вроде бы наоборот - кто человек, тот под линуксом ( Let the holywar begin! :-) ). Но если серьезно, у меня нет опыта, как с ним работать под виндой, но выше в комментах (даже прямо над вашим комментом) люди под виндой запускают.

У меня на Win10 Pro под WSL2 с Убунтой — запустилось с первого раза...


sudo apt-get update
sudo apt install python3-pip
pip3 install nudecrawler

А можете пожалуйста подсказать как использовать контейнер?
Он у меня нормально запускается но со временем просто перегружается и не воспринимает никаких команд(

добавьте ключ -v чтобы он подробнее писал, что он делает. И можно -a чтобы не фильтровать результаты, а выдавать все, что найдет. Возможно он у вас работает, просто долгое время ничего не находит. В таком варианте он работает стабильно? Если нет - то покажите какой-то вывод от него, а то не очень понятно.
У меня он несколько недель без остановки работал (но авто-рестартовал контейнеры с детекторами, у них бывают memory leak)

Интересно, если это запустить через google colab, забанят?

А зачем пытаться "тыкаться" в "версии" страницы? Если blabla-01-01-2 существует, а blabla-01-01-2 нет, то ... наверное нет смысла дальше пытаться? Или есть какие-то edge cases (может удалили администраторы?) или... тип страница пропала каким-то образом?

у вас вроде ссылки одинаковые. Но да, вот такие "дырки" в номерах там есть. Может погулять вокруг darina-05-06-79 например. Сам удивлен.

Да, опечатался, сорь. Хех, да, вы правы ) это странно, конечно)

Sign up to leave a comment.

Articles