Скрипты и программы BrowserAutomationStudio - создание постеров, спамеров, парсеров, комбайнов для соц. сетей

Та много чего, "DELE" вместо "DELETE", "1L".
Почему бы вместо апи не использовать стандартный функционал, он умеет удалять письма.
я уже что там только не пробывал, но ругается именно на сертификат только с этой бы ошибкой разобраться а остальными опцями я в гугл пойду курить примеры, гуглил целый день сегодня с сертификатом, с этой ошибкой я так и не нагулил ничего толкового.
 

Последнее редактирование:
Вам нужно прочитать интерактивную документацию по действию "Почта" -> "Настроить" :

Почтовый ящик может содержать несколько папок, и вы можете искать письма из определенной папки, изменяя параметр 'Имя папки'. По умолчанию он установлен в 'INBOX', эта папка содержит абсолютно все сообщения. Каждый почтовый хостинг предоставляет свои собственные имена по умолчанию для разных папок. Например, имя по умолчанию для папки удаленных писем в gmail - '[Gmail]/Trash', для папки спама - '[Gmail]/Spam'. Вы также можете создавать свои собственные папки и использовать их в этом действии.

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

Сейчас не хочу отвлекаться на поиск решения, занят новой версией.
 

Вам нужно прочитать интерактивную документацию по действию "Почта" -> "Настроить" :

Почтовый ящик может содержать несколько папок, и вы можете искать письма из определенной папки, изменяя параметр 'Имя папки'. По умолчанию он установлен в 'INBOX', эта папка содержит абсолютно все сообщения. Каждый почтовый хостинг предоставляет свои собственные имена по умолчанию для разных папок. Например, имя по умолчанию для папки удаленных писем в gmail - '[Gmail]/Trash', для папки спама - '[Gmail]/Spam'. Вы также можете создавать свои собственные папки и использовать их в этом действии.

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

Сейчас не хочу отвлекаться на поиск решения, занят новой версией.

у майл ру она называется Spam, а в папке inbox в обших нету тех сообщений которые попали в папке спам, у маил ру вот что написано:
Спам
Это системная папка, которую нельзя удалить или переименовать, но вы можете получить доступ к ней с помощью почтовых клиентов через POP3.
поэтому я сразу начал решать эту задачу через pop3 с помощью curl
ведь стандартный кубик по работе с почтой работает только по imap
 

Последнее редактирование:
Рекламное сообщение
⚠️ Pirate VPN Service - Быстрый, безопасный и надежный VPN от команды PirateHUB

Работайте безопасно. Обходите любые блокировки. Защитите свои данные.

➡️ Подробнее
 

у майл ру она называется Spam

Я в этом не уверен. Вам нужно найти правильное имя папки(возможно разрешить работу с ней в настройках) и использовать это название. К сожалению, у меня сейчас нету времени в этом разбираться самому, потому что скоро релиз.
 

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

Это последняя вкладка, ее закрыть нельзя. Используйте действие "Закрыть браузер"
Решил проблему так, вставляю действие спать рандомное время в начале скрипта.
Скрипт отработал, а потом курит уже при запуске.
 

Я в этом не уверен. Вам нужно найти правильное имя папки(возможно разрешить работу с ней в настройках) и использовать это название. К сожалению, у меня сейчас нету времени в этом разбираться самому, потому что скоро релиз.
Одну решил проблему, там папка название не правильная была.

Но с curl проблема АКТУАЛЬНА и не решена, ругается на сертификат.
Может быть эта проблема связана с басом именно при работе где требуется ssl, уже все перепробовал. Ошибка все та же.
Код:
"code": "CURLE_SSL_CACERT",



    "error": "Peer certificate cannot be authenticated with given CA certificates",
Перед релизом проверьте этот момент пожалуйста.
 

Версия Chrome обновлена до 68.

uJ1vneI.png


Архитектура браузера изменилась, теперь для работы каждого браузера запускается несколько процессов вместо одного. Работа с одним процессом плохо поддерживается, поэтому это изменения помогут избежать множества ошибок.

Добавлена поддержка widevine drm. Эти изменения позволят BAS работать с такими сайтами как netflix и spotify.

Добавлено новое действие "Уведомления", теперь вы можете принимать или отклонять уведомления браузера.

xi3QBVl.png

Добавлена ограниченная поддержка расширений Chrome. Используйте действие "Настройки браузера", чтобы включить их. К сожалению, большая часть api все еще не реализована. Текущий прогресс можно увидеть по ссылке chromiumembedded / cef / issues / #1947 - Add support for chrome extensions — Bitbucket .

В этой версии вы можете работать с Multilogin в режиме записи.

zKQxzgA.gif


Чтобы увидеть новые изменения, вам нужно остановить Multilogin при первом запуске и позволить BAS запустить его самостоятельно.
 

Был обновлен сервис FingerprintSwitcher:

PuQwKff.png


  • Добавлена возможность менять отпечаток Canvas.
  • Добавлена возможность менять отпечаток WebGL.
  • Модель вашей видеокарты получамая через javascript замененяется значениями из реальных устройств.
  • Все данные меняются на уровне браузера, так что замену обнаружить невозможно.
  • Подмена данных свойст осуществляется "на лету", поэтому перезапуск браузера не нужен.

Чтобы начать использовать новый функционал нужно оформить подписку на сервис FingerprintSwitcher.
Все, что нужно сделать для того изменить отпечатки - это выполнить действие "Применить отпечаток".
Вот видео с более детальным описанием и демонстарцией работы




BAS также обновлен для поддержки новых возможностей:

  • Вкладка настроек содержит новые свойства - возможность отключить WebRTC, Canvas, WebGL или добавить шум в Canvas, WebGL.
  • В действие "Настройки Браузера" также добавлены новые значения, это позволяет менять настройки в процессе работы для каждого потока отдельно.
  • Добавлена интерактивная документация для модуля "Смена отпечатка браузера".
  • Добавлены настройки для добавления шума в действие "Применить отпечаток".
  • Размер скомпилированного скрипта уменьшен на 150 мб.

Исправлено несколько багов:

  • Исправлено перетаскивание закладок.
  • Исправлено падение софта при запуске нескольких функций в несколько потоков мгновенно при старте скрипта.
  • Баг с добавлением символа 'а' при очистке пустого поля.
  • Добавлена поддержка сервиса captcha guru.
  • Оптимизация для больших строк в базе.
  • При запросе к базе данных теперь можно получать одну запись по id или фильтровать строки по точному значению.

Цена за подписку на FingerprintSwitcher теперь увеличена до 20$ в месяц или 40$ за 3 месяца.
В следующем месяце будет еще много апдейстов связанных с отпечатками, при этом цена повышаться не будет.
 

Выпущена версия 21.4.1, в этой версии присутствует несколько больших изменений:

Действие 'Прокси' теперь не только меняет прокси, но и делает так, чтобы смена прокси выглядела более правдоподобно.
Работа в основном окне программы (оно черного цвета) теперь происходит более интуитивно.
Исправлен один очень неприятный баг связанный с несвоевременным освобождением памяти при работе с одним браузером на протяжении долгого времени.

ddfAi4C.png



A8ByAwC.png



Давайте рассмотрим каждое изменение более подробно.

Для начала немного информации про WebRTC, так как этот функционал встроен в любой современный браузер, а с помощью него можно получить данные о реальном ip даже используя прокси. WebRTC - набор апи, которые помогают устанавливать соединение между браузерами и передавать между ними информацию. Причем предпочтение отдается именно прямому соединению, и только если оба браузера находятся за фаерволом или NAT, то используется специальный сервер чтобы передавать трафик через него. Установить соединение бывает непросто учитывая то, что ipv4 адресов недостаточно для всех устройств и большинство из них находятся в приватных сетях, имеют адреса вида 192.168.*.* или 172.16.*.* и обмениваются информацией с остальными через NAT. WebRTC использует такой алгоритм чтобы установить соединение - сначала устройства получают информацию о конфигурации своих сетей и обмениваются ей через какой-то другой канал, потом они пытаются соединиться используя разные варианты конфигурации. Допустим, если устройства находятся в одной сети, то для установления соединения достаточно использовать ip в этой сети, если одно из устройств имеет внешний ип, то оно выступает в роли "сервера" и к нему подключается второе устройство, или наоборот. Нам интересна как раз конфигурация сети, поскольку она содержит реальные ip адреса. WebRTC допускает ее чтение, и даже редактирование через javascript перед отправкой собеседнику. Информация имеет формат SDP описанный в данных документах RFC 5245 - Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols RFC 4566 - SDP: Session Description Protocol. По следующей ссылке ее можно получить через ваш браузер Edit fiddle - JSFiddle, скорее всего там есть ваш реальный ip. В качестве одного из параметров данной информации выступает внешний ip браузера, он получается через запрос к STUN серверу. Функционал данного сервера очень прост - возвращать устройству сделавшему запрос его реальный ip адрес. Сайт сам задает STUN сервер, который хочет использовать, например, в коде выше использовался такой сервер stun.l.google.com:19302. Запросы к этому серверу идут через протокол UPD(вместо TCP) минуя прокси. Суммируя вышесказанное, javascript может совершать запрос к произвольному серверу без прокси и получать ответ в виде реального внешнего ip. Вот ссылка на хорошую статью если вы хотите ознакомиться с вопросом более детально WebRTC in the real world: STUN, TURN and signaling - HTML5 Rocks

До недавнего времени в BAS использовался алгоритм, который запрещает любые запросы подобного рода. В данной версии, BAS изменяет ip полученный от сервиса на внешний ip текущего прокси, это происходит по умолчанию при использовании действия 'Прокси', тем не менее новый функционал можно отключать в этом же действии. Рассмотрим детали реализации:

1) Подмена ip происходит на уровне браузера, через js обнаружить ее невозможно.
2) Разные браузеры могут выдавать информацию в формате SDP, тем не менее немного отличающуюся. Подмена может осуществлятся через замену текста, и такой метод можно обнаружить проверив некоторые детали специфичные для браузера. BAS выдает информацию именно так, как это делает Chrome, без замены текста.
3) Запросы к любому STUN серверу запрещены. Даже если запретить получение информации непосредственно через js, но оставить возможность браузеру делать запрос к серверу, то реальный ip не будет известен клиенту, но будет известен серверу и если настроить несколько серверов или несколько портов и связать пользователя с конкретным сервером, то ip можно получить уже на стороне клиента. BAS защищает от подобного метода.

Есть простой метод, как можно проверить, пытается ли сайт получить ваш ip через WebRTC или нет, достаточно установить Wireshark, в поле фильтра установить строку stun и зайти на сайт, в случае использования WebRTC в окне приложения будут запросы. Вот видео, которое это демонстрирует:
В случае BAS, запросов не будет, хоть ip и будет возвращаться.

Почему бы не сделать запросы к STUN серверу через туннелирование?
Дело в том, что не все прокси поддерживают протокол UPD, хотя это и указано в спецификации. Пример такого прокси В будущем BAS будет проверять прокси на такую возможность, но сейчас все запросы к STUN серверу запрещены.

Как видите, данная реализация хоть и не является идеальной, но достаточно близка к ней.

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

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

BAS научился корректно возвращать измененную дату с учетом летнего времени.

Еще один способ, которым можно обнаружить примерное реальное месторасположение является использование internationalization api( Intl.DateTimeFormat ). Пример использования: Edit fiddle - JSFiddle, по ссылке должно отобразится ваше примерное реально месторасположение независимо от прокси и впн.

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

Наконец, бывают ситуации, когда ip, который вы используете для доступа к прокси не соответствует его внешнему ip, в таких случаях BAS будет получать внешний ip через сервис ip.bablosoft.com. К сожалению, не существует способа получить адрес без сетевого запроса. Сервис должен стабильно работать при 20к запросах в секунду. Настройка отключаема.


Немало внимания в новом апдейте было уделено удобству использования основного окна.

Для элементов, значение которых может быть не совсем понятным, появились подсказки.
Реализовано множество удобных мелочей: список недавних проектов теперь находится всегда на основной панели, путь к текущему проекту можно скопировать, все иконки заменены на такие, что смотрятся лучше при маленьком размере элементов, изменены значки запущенных браузеров.
Добавлена возможность быстрого обмена проектами - открытие проекта по ссылке и загрузка на гугл диск.
Обновлено окно компиляции проекта, оно стало более интуитивным и интегрированным с облаком. Теперь проект можно обновлять/создавать прямо из BAS, появилась возможность не создавать архив при каждой компиляции.


Было потрачено много времени на поиск причины и исправление бага с несвоевременным освобождением памяти. Баг существовал все время на протяжении жизни проекта и проявлялся только тогда, когда несколько браузеров работали 10 и больше часов без перезапуска. Потребление памяти увеличивалось приблизительно на 5-10 мб в час, через несколько дней непрерывной работы проект становился неработоспособным. Ошибка была связана с библиотекой Qt, был найден метод как обойти этот баг.

Надеюсь, что новая версия вам понравится и будет полезной!
 

Может быть не внимательно читал, но все же спрошу: Есть текстовый файл, откуда берутся ссылки, но ссылки берутся почему-то не по порядку,а через одну. Допустим сначала берется ссылка №1, потом ссылка №3, ссылка №5. Где можно исправить?
 

Скорее всего вы получаете 2 раза ресурс и в нем каждый раз отключен чекбоксом "Повторное использование", но без проекта сказать сложно.
 

Обратите внимание

Назад
Сверху