- Регистрация
- 16.03.2016
- Сообщения
- 1 832
- Благодарностей
- 1 444
- Баллы
- 113
Пару месяцев назад на форуме появилась тема, где просили помочь разобраться с отправкой изображений в сервис Dewatermark.ai через его API. У меня было немного свободного времени, разбираться со всякими API я люблю, покопался, помог. На всякий запомнил сайт, мало ли, пригодится 
Пригодился. Где-то через месяц понадобилось удалить водяные знаки где-то с трех тысяч фотографий (у одного поставщика на сайте все фото были исходно залиты с водяными знаками, искать исходники им было лень). Искать и разворачивать локально какую-нибудь нейронку для этого было некогда, в моем случае пришлось бы еще тратить немало времени, чтобы разобраться. Задача разовая, иногда проще идти простым путем, тем более, если этот путь за нас может пройти ZennoPoster (хоть три тысячи раз).
Вспомнил про эту тему на форуме, откопал шаблон с парой кубиков. Зашел в сервис, посмотрел цены. И немного приуныл… 24 бакса за 1000 фоток. Если через API – вообще $60… Задача относительно коммерческая, но не до такой степени
Заметил, что 10 кредитов для API дается при регистрации, стало полегче. Взял готовые кубики, которые скидывал в теме, зарегистрировался руками, получил API ключ, вставил, проверил – работает. Где-то ИИ немного промахивался, удаляя лишний текст (не всегда верно определял, что именно является водяным знаком, исходники были сами по себе плохого качества), но мне подходило. Накидал простенький шаблон, отправляющий фотки по очереди. Выбрал лимит, получил 10 фоток без водных.
Дело оставалось за малым – нарегать 300+ аккаунтов, получив необходимое количество API-ключей для работы. Учитывая, что реализовывать все планировалось через ZennoPoster, проблемой это не казалось… Но обошлось и без этого, поскольку, повторюсь, если задача относительно разовая, я предпочитаю не усложнять, а искать наименее затратный по времени путь. Иногда проще один раз сделать руками за полчаса, чем потратить час на автоматизацию, которая больше никогда не понадобится
В общем, регистрация не пригодилась. И аккаунты не пригодились. Я просто взял авторизационный токен, который был в заголовке запроса при загрузке фото прямо в браузере (причем, даже без регистрации).
Подставил этот токен в заголовки в кубик… и сработало! Сделал еще запрос – получил фото без водяного, отправил еще – снова удача, отправил новый – ошибка, но вполне ожидаемая…
У сервиса есть ограничения – три бесплатных обработки фото в сутки с одного IP.
Поменял IP, отправил с тем же токеном – опять все нормально. В целом, в голове уже сформировалась схема, как все реализовать: берешь пачку прокси, отправляешь по три фото в сутки на один айпи, если не хватило – повторяешь на следующий день.
Объемы у меня были небольшие, какой-то пакет прокси был под рукой, плюс всегда могли выручить мобильные. Было понятно, что если не за день, то за пару-тройку точно управлюсь, торопиться не было необходимости.
В плане работы с прокси обнаружилась пара ООООООЧЕНЬ приятных вещей. Во-первых, вся обработка фотографии происходит в рамках одного запроса (т.е., мы делаем POST-запрос с отправкой фото и прямо в ответе получаем фото без водяных), что позволяет работать с прокси, где каждый новый запрос происходит с нового IP. Второе – оказалось, что сайт неожиданно поддерживает работу с ipv6-прокси.
Ну вы поняли, да?
Ну и не менее важное – сайт спокойно работает с российских IP, т.е., можно искать недорогие варианты «масштабирования» под рукой… Не исключаю, что работать можно и с разными бесплатными прокси, можете попробовать.
Из минусов (ну, куда же без них, мне вообще перед конкурсами прямо везет на изменения, которые немного ломают схему)… Буквально за день до того, как сесть за статью, и перепроверяя работу шаблона, я столкнулся с тем, что токен, который я использовал в своем проекте месяц назад, протух, в ответ получаем «{"status":"ERROR","message":"Token expired"}». Причем, буквально за пару дней до этого проверял – все работало и с ним
Взял новый в браузере, подставил, все снова заработало.
Видимо, не я один взялся за этот сервис. Да и мои мелкие объемы вряд ли привели бы к таким последствиям
В целом, получение свежего токена – вопрос технический и, думаю, решается достаточно легко, причем, не руками (в моем случае, как говорил, это было избыточно, поскольку работало самое простое решение). При протухании токена просто получаем новый (из браузера или запросами – это уже вопрос реализации, надо покопать чуть глубже), мы же уже все автоматизировали, поэтому не проблема добавить в схему один лишний этап )) Осталось проанализировать, как часто сервис меняет токены.
Update: Перед самой публикацией быстро посмотрел запросы в Fiddler, очевидными способами, к сожалению, токен не нашелся (или я пропустил). Вопрос точно решаемый, просто надо найти способ.
Я же решил не откладывать очередную тему в стол (в надежде, что к следующему конкурсу точно найдется время доделать исходя из изменений в источнике, проходил уже – не найдется
). Тем более, что схема, в целом, рабочая и сейчас, фото отправляются, ватермарки убираются )) Специально оставил в шаблоне в отдельном блоке кубик с возможностью отправлять не с токеном с сайта, а с API-ключом из личного кабинета (если кто-то готов платить или решить вопрос с массовой регистрацией аккаунтов).
Ну и если у кого-то есть время и желание (может, появится и у меня в ближайшее время) допилить получение свежего токена, задача, в целом, вполне реализуемая (даже если для этого нужно будет время от времени "прыгать в браузер"). На край, схему с регистрацией аккаунтов тоже вполне можно реализовать, а там на каждый аккаунт - 10 кредитов для API. Учитывая, что в конкурсах стали приветствовать доработки старых конкурсных шаблонов, может быть, кто-нибудь возьмется к следующему
Приложенный шаблон – простой. Большинство кубиков/блоков – про самую элементарную логику, а не саму работу. В целом, взаимодействие с самим сервисом обходится двумя кубиками/сниппетами: «отправить фото» и «сохранить результат». Что-то прямо полезное и, тем более, уникальное, тут вряд ли кто-то из опытных пользователей ZennoPoster’а найдет. Хотя, кому-то из новичков, думаю, может пригодиться кубик отправки файла в POST-запросе через multipart (не самый линейный для новичков формат самого запроса, не всегда понятно, что и куда писать).
Задача, скорее, была в том, чтобы в очередной раз показать, что с большинством сервисов, которые что-то дают бесплатно, вполне можно работать массово, имея под рукой прокси в нужном количестве (нередко - далеко не самые лучшие и не самые дорогие, а порой и бесплатные).
Есть ли у данного "проекта" перспективы? Ну, пока готовил статью, заметил, что у них появилось удаление водяных знаков в видео (а еще и из pdf-файлов, но эту функцию я даже не проверял).
Так что, думается, определенные перспективы точно есть )) Тем более, что какая-то база для работы с этим сайтом у нас в руках уже имеется. Может, к следующему конкурсу
Может, даже не мной...
Все исходные изображения, использованные для подготовки данного материала, во избежание возможных претензий были специально предварительно сгенерированы нейросетью (для демонстрации не стал использовать изображения, на которых присутствуют водяные знаки популярных фотостоков, хотя сервис вполне успешно с ними справляется).
Решение и шаблон выложены исключительно в ознакомительных и образовательных целях и никоим образом не призывают к нарушению авторских прав на используемые изображения. Возможные последствия (в том числе, юридические) своих действий каждый должен оценивать сам (в последнее время из-за резкого снижения продаж на фотостоках из-за появившихся ИИ, генерирующих изображения, авторы ищут дополнительные источники заработка, одним из которых стали многочисленные судебные иски к тем, кто "просто скачал фото где-то в интернете").

Пригодился. Где-то через месяц понадобилось удалить водяные знаки где-то с трех тысяч фотографий (у одного поставщика на сайте все фото были исходно залиты с водяными знаками, искать исходники им было лень). Искать и разворачивать локально какую-нибудь нейронку для этого было некогда, в моем случае пришлось бы еще тратить немало времени, чтобы разобраться. Задача разовая, иногда проще идти простым путем, тем более, если этот путь за нас может пройти ZennoPoster (хоть три тысячи раз).
Вспомнил про эту тему на форуме, откопал шаблон с парой кубиков. Зашел в сервис, посмотрел цены. И немного приуныл… 24 бакса за 1000 фоток. Если через API – вообще $60… Задача относительно коммерческая, но не до такой степени

Заметил, что 10 кредитов для API дается при регистрации, стало полегче. Взял готовые кубики, которые скидывал в теме, зарегистрировался руками, получил API ключ, вставил, проверил – работает. Где-то ИИ немного промахивался, удаляя лишний текст (не всегда верно определял, что именно является водяным знаком, исходники были сами по себе плохого качества), но мне подходило. Накидал простенький шаблон, отправляющий фотки по очереди. Выбрал лимит, получил 10 фоток без водных.
Дело оставалось за малым – нарегать 300+ аккаунтов, получив необходимое количество API-ключей для работы. Учитывая, что реализовывать все планировалось через ZennoPoster, проблемой это не казалось… Но обошлось и без этого, поскольку, повторюсь, если задача относительно разовая, я предпочитаю не усложнять, а искать наименее затратный по времени путь. Иногда проще один раз сделать руками за полчаса, чем потратить час на автоматизацию, которая больше никогда не понадобится

В общем, регистрация не пригодилась. И аккаунты не пригодились. Я просто взял авторизационный токен, который был в заголовке запроса при загрузке фото прямо в браузере (причем, даже без регистрации).
Подставил этот токен в заголовки в кубик… и сработало! Сделал еще запрос – получил фото без водяного, отправил еще – снова удача, отправил новый – ошибка, но вполне ожидаемая…
У сервиса есть ограничения – три бесплатных обработки фото в сутки с одного IP.
Поменял IP, отправил с тем же токеном – опять все нормально. В целом, в голове уже сформировалась схема, как все реализовать: берешь пачку прокси, отправляешь по три фото в сутки на один айпи, если не хватило – повторяешь на следующий день.
Объемы у меня были небольшие, какой-то пакет прокси был под рукой, плюс всегда могли выручить мобильные. Было понятно, что если не за день, то за пару-тройку точно управлюсь, торопиться не было необходимости.
В плане работы с прокси обнаружилась пара ООООООЧЕНЬ приятных вещей. Во-первых, вся обработка фотографии происходит в рамках одного запроса (т.е., мы делаем POST-запрос с отправкой фото и прямо в ответе получаем фото без водяных), что позволяет работать с прокси, где каждый новый запрос происходит с нового IP. Второе – оказалось, что сайт неожиданно поддерживает работу с ipv6-прокси.
Ну вы поняли, да?

Из минусов (ну, куда же без них, мне вообще перед конкурсами прямо везет на изменения, которые немного ломают схему)… Буквально за день до того, как сесть за статью, и перепроверяя работу шаблона, я столкнулся с тем, что токен, который я использовал в своем проекте месяц назад, протух, в ответ получаем «{"status":"ERROR","message":"Token expired"}». Причем, буквально за пару дней до этого проверял – все работало и с ним

Видимо, не я один взялся за этот сервис. Да и мои мелкие объемы вряд ли привели бы к таким последствиям

Update: Перед самой публикацией быстро посмотрел запросы в Fiddler, очевидными способами, к сожалению, токен не нашелся (или я пропустил). Вопрос точно решаемый, просто надо найти способ.
Я же решил не откладывать очередную тему в стол (в надежде, что к следующему конкурсу точно найдется время доделать исходя из изменений в источнике, проходил уже – не найдется

Ну и если у кого-то есть время и желание (может, появится и у меня в ближайшее время) допилить получение свежего токена, задача, в целом, вполне реализуемая (даже если для этого нужно будет время от времени "прыгать в браузер"). На край, схему с регистрацией аккаунтов тоже вполне можно реализовать, а там на каждый аккаунт - 10 кредитов для API. Учитывая, что в конкурсах стали приветствовать доработки старых конкурсных шаблонов, может быть, кто-нибудь возьмется к следующему

Приложенный шаблон – простой. Большинство кубиков/блоков – про самую элементарную логику, а не саму работу. В целом, взаимодействие с самим сервисом обходится двумя кубиками/сниппетами: «отправить фото» и «сохранить результат». Что-то прямо полезное и, тем более, уникальное, тут вряд ли кто-то из опытных пользователей ZennoPoster’а найдет. Хотя, кому-то из новичков, думаю, может пригодиться кубик отправки файла в POST-запросе через multipart (не самый линейный для новичков формат самого запроса, не всегда понятно, что и куда писать).
Задача, скорее, была в том, чтобы в очередной раз показать, что с большинством сервисов, которые что-то дают бесплатно, вполне можно работать массово, имея под рукой прокси в нужном количестве (нередко - далеко не самые лучшие и не самые дорогие, а порой и бесплатные).
Есть ли у данного "проекта" перспективы? Ну, пока готовил статью, заметил, что у них появилось удаление водяных знаков в видео (а еще и из pdf-файлов, но эту функцию я даже не проверял).
Так что, думается, определенные перспективы точно есть )) Тем более, что какая-то база для работы с этим сайтом у нас в руках уже имеется. Может, к следующему конкурсу

Все исходные изображения, использованные для подготовки данного материала, во избежание возможных претензий были специально предварительно сгенерированы нейросетью (для демонстрации не стал использовать изображения, на которых присутствуют водяные знаки популярных фотостоков, хотя сервис вполне успешно с ними справляется).
Решение и шаблон выложены исключительно в ознакомительных и образовательных целях и никоим образом не призывают к нарушению авторских прав на используемые изображения. Возможные последствия (в том числе, юридические) своих действий каждый должен оценивать сам (в последнее время из-за резкого снижения продаж на фотостоках из-за появившихся ИИ, генерирующих изображения, авторы ищут дополнительные источники заработка, одним из которых стали многочисленные судебные иски к тем, кто "просто скачал фото где-то в интернете").
Вложения
-
32,5 КБ Просмотры: 5
Последнее редактирование: