Многие задают вопрос, как использовать старые смартфоны. В самом деле, не выбрасывать же на свалку устройство с двумя-четырьмя CPU, гигабайтами оперативки, рабочими чипами NAND, модемом 4G и другой полезной электроникой. И действительно, старые гаджеты вполне могут ещё поработать и принести пользу. Например, на домашней ферме для автоматического тестирования приложений, скрапинга публично доступной информации и др.

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


Домашняя ферма для клик-фрода, источник

Но это не наш случай. Во-первых, клик-фермы уже неактуальны. В этой «индустрии», если её можно так называть, нет особых денег. И сами фермеры постепенно уходят из бизнеса, см. прощальное видео TheTechSlugs. Зарабатывать деньги на обмане людей — в конечном итоге всегда минус, по крайней мере для кармы. Во-вторых, есть вполне легальные, полезные варианты ферм. О них и говорим.

Профессиональный скрапинг


Скрапинг веб-сайтов — очень распространённая техника для получения нужной информации, которую вы используете в своих проектах. Для индивидуального скрапинга в личном боте можно использовать инструменты вроде Axiom (десктопное приложение и расширение Chrome), Cognifirm, Automa (расширение Chrome), Browserflow (расширение Chrome), UI.Vision RPA (расширения для Chrome, Firefox, Edge).

Они записывают любые действия в интерфейсе браузера, а затем воспроизводят их по расписанию. Это позволяет автоматизировать разнообразные задачи. Например, автоматически скрапить свежие данные с сайтов (цены на товары, курсы валют и др.), добавлять их в электронные таблицы Google Sheets, где выполняются некие расчёты, или обновлять информацию на своём сайте.

Типичные примеры:
● автоматизировать тесты


Автоматизация UI-тестирования с UI.Vision RPA

● скачать все фотографии из профиля в инстаграме (код);
● соскрапить всех программистов из LinkedIn в своих кругах (код);


Скрапинг разработчиков с Browserflow:
● собрать в таблицу результаты поиска Google Maps;
● автоматизировать рутинные действия (например, отфоловить всех, кто подписался на вас в твиттере), код;
● делать скриншоты веб-страниц и автоматически обрабатывать картинки (кроп, изменение размеров) перед публикацией, автоматически сохранять копии страниц;
● и др.

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


Источник: Axiom

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

Прокси



Фото: Proxidize

Мобильный 4G/LTE-прокси — эффективное решение для маскировки ботов, которые делают полезную работу. Дело в том, что адресов IPv4 не хватает на всех. Поэтому интернет-провайдеры и мобильные операторы используют технику CGNAT (Carrier Grade Network Address Translation) — сотни или тысячи людей в реальности подключены по одному и тому же адресу IPv4. Если один из адресов попадёт в бан на каком-то сайте, то пострадают все пользователи на этом адресе.

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

Каждые 5 минут каждое устройство отключается от сети GSM и снова подключается, получая новый IP-адрес. В случае 4G-донглов используется софт для эмулирования Android, вроде Android-x86 на VirtualBox, Bluestacks и Android Studio Emulator. Для маскировки одновременно применяются и другие техники, такие как смена Device ID для обхода фингерпринтинга и др.



Установка DIY мобильного прокси из коммерческого набора 4G-донглов занимает считаные минуты — основное время занимает процесс установки сим-карт в донглы, — а десяток смартфонов обеспечивают канал передачи данных до 150 Мбит/с.

Автоматическое тестирование


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

Подписка стоит около $150 за одно устройство в месяц. Или можно построить собственную ферму, на которой прогонять любое количество тестов — совершенно бесплатно, если не считать стоимость смартфонов.


Источник: Smartphone Test Farm

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

Если собирать Android-сервер на плате с сокетом LGA2011-3 с процессорами Xeon, то можно выбрать такую конфигурацию:
● Материнская плата Asus X99-A II
● Процессор Intel Xeon E5-2630
● Память 2x8GB DDR4
● SSD Intel 660p 2 ТБ

На сервер устанавливается внешняя карта USB 3.0 PCIe…

Карта USB 3.0 PCIe с четырьмя портами по 5 Гбит/с, источник

… а к этой карте подключаются USB-хабы со смартфонами.


7-портовый USB-хаб, источник

Вот другой вариант конфигурации Android-сервера. Как и автоматическое тестирование. услуги 4G-прокси для обхода блокировок тоже можно заказать у специализированных провайдеров, например, Brightdata, Packetstream или Oxylabs.

Но своя DIY-ферма имеет ряд очевидных преимуществ:
● защита своего бота от соседей по прокси, которые могут заниматься чем-то нелегальным — накрутка просмотров, боты в комментариях социальных СМИ, SQL-инъекции и тому подобное;
● экономия финансов, потому что услуги специализированных провайдеров обходятся довольно дорого, а на домашней ферме можно даже зарабатывать, предоставляя услуги коллегам;
● обход профессиональной антифродовой защиты типа DataDome, Akamai и Imperva, которые применяют самые современные техники фингерпринтинга: сканирование портов у посетителей сайта (например, сканирование портов пользователей через личный кабинет «Ростелекома»), проверка набора шрифтов, криптобиблиотек, опрос API гироскопа на смартфоне (теоретически, веб-сайт может определить, что вы сидите в туалете), запросы CSS и др.

Таким образом, домашние фермы из 4G-донглов и смартфонов снова входят в моду. Только сейчас они используются не для мошенничества, как раньше, а для полезных дел: обхода блокировок, профессионального скрапинга и автоматизации тестов.

Комментарии (32)


  1. TimKorDev
    25.11.2021 19:56
    +4

    Вот бы вы еще смету на подобную ферму дали. Дорогое удовольствие или нет?


    1. Triproductivity
      25.11.2021 21:22
      +1

      На вид тысяч 100 рублей.


  1. v1000
    25.11.2021 20:22
    +2

    Интересно, как такая ферма будет фонить?


    1. quwy
      25.11.2021 21:01
      +3

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


  1. T_Cirkla
    25.11.2021 20:38

    NAND? Разве в смартфона в основном не eMMC?


    1. mvideo Автор
      25.11.2021 20:58
      +9

      Внутри еММС тоже стоят чипы NAND.


  1. Geograph
    25.11.2021 21:09
    +2

    А можно запариться, разобрать запросы приложения и сделать всё многопоточно на ПК без ферм


    1. spanasik
      25.11.2021 23:04

      Без кучи прокси не получится.


      1. Geograph
        25.11.2021 23:06

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


      1. alexzeed
        26.11.2021 10:15

        А почему не получится? Чем ПК, посылающий правильные запросы через один 4G модем, отличается от пачки телефонов, висящих на той же БС? Внешний IP тот же, внутренности сети оператора, я надеюсь, никакому Акамаи не видны, внутренних IP виртуальных клиентов можно наделать сколько хочешь. Я думаю, тут весь вопрос в точности эмуляции параметров клиентского браузера.


  1. stalinets
    25.11.2021 22:06
    +3

    А нет ли клиента BOINC под Android? Можно было бы просто запустить какие-нибудь полезные рассчёты на паре старых смартфонов, например, фолдинг белков, а для избегания перегрева занизить нагрузку при необходимости. Да, производительности там немного, но всё равно пользу бы приносило, потихоньку ковыряя задачи в пару потоков 24/7. А на экран вывести соответствующей программкой часы, например, в стиле Nixie tubes.



    1. Bazis007
      26.11.2021 09:06
      +1

      Есть..У меня такая же мысль возникла. Взял 3 старых смартфона, поставил клиента.. в итоге за пол года у всех 3 смартфонов сдулись аккумы. Вендоры разные, аккумы разные..
      Так что осторожнее, пожар может быть.


      1. Xadok
        26.11.2021 12:53

        Так в фермах аккумы вынимать надо и питать напрямую от источника. Как в автомобили планшеты встраивают, так и тут.


        1. mk2
          26.11.2021 16:48

          Не все смартфоны могут работать без батареи от питания.


          1. Xadok
            26.11.2021 17:25

            Значит такие не подходят для ферм


          1. 4aba
            27.11.2021 06:39

            А нельзя подать вместо батареи 4 В на контакты? Так работать не будет?


            1. vvzvlad
              30.11.2021 20:07

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


  1. monane
    25.11.2021 23:31

    DIY-фермы

    Неожиданно на хабре это прочесть,

    Только у вас фермы из модемов на фото ну на одном из. Не знал что арсенал ботоводства теперь в

    Автоматическое тестирование

    )

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

    самые современные техники фингерпринтинга: сканирование портов у посетителей сайта

    Так как специализация хабра давно не техническая, а скорее научпоп с элементами соцсети. То и пользователи не все знают как этого избежать Например так : https://www.ctrl.blog/entry/block-localhost-port-scans.html

    Таким образом, домашние фермы из 4G-донглов и смартфонов снова входят в моду.

    По профилю они и не выходили


  1. SergeiMinaev
    26.11.2021 08:36
    +5

    Сначала говорите про карму и прочее, а затем

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

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


    1. DCNick3
      26.11.2021 14:58
      +1

      Business gonna do business. Если это выгодно (учитавая в т.ч. и законность) — это будут делать. Скрапинг тут не исключение


  1. uburame
    26.11.2021 11:18

    А какой софт для этого используют? В частности для тестирования, чтоб удалённо управлять браузером в телефоне или всем телефоном. Был удивлён, что Селениум такого не умеет.


    1. vrnvorona
      26.11.2021 21:05

      Appium?


  1. molec
    26.11.2021 12:20

    А есть игрушки, которые можно по usb/bt/wi-fi соединить с телефоном и использовать телефоньи мозги, датчики, экран и тп? На взгляд дилетанта очевидно, насколько умнее можно сделать машинку/робота/коптер, соединив его с телефоном.

    Как минимум, у меня уже 100 лет есть идея такого домашнего охранного устройства. Базовая станция, подключенная к электросети. На ней заряжается машинка, ну скажем см 20-40 длиной, дорожный просвет несколько см, чтобы переползать через пороги. В машинку установлен телефон. По команде из веб-интерфейса машинку при помощи телефона можно отправить по квартире с включенной камерой - просто своими глазами проверить, что дома все ОК, пока тебя нет. Можно записать маршрут - пусть сама ездит и возвращается на базу заряжаться по расписанию. Можно дооснастить подъемником телефона, чтобы рассматривать детали с бОльшей высоты. Подобных игрушек - море, остается только добавить контроллер и написать не самое сложное мобильное приложение.


    1. slog2
      26.11.2021 12:50

      Зачем по комнатам ездить? Китайская камера за 2т.р. стоит в углу комнаты. Если очень хочется то можно и поворотную поставить. Достаточно чтобы проверить что дома всё ОК.


      1. molec
        26.11.2021 13:25

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



    1. beliashou
      26.11.2021 13:05

      Вы изобрели камеру, прикрученную к роботу-пылесосу? Заодно и дома чисто.


    1. elCreator
      26.11.2021 15:28

      https://github.com/isl-org/OpenBot такое уже есть, причем Open Source, 2k звезд, больше сотни форков.


      1. molec
        26.11.2021 15:39

        Спасибо! Я ж понимал, что эта мысль витает в воздухе, но ни разу воплощения не видел.


  1. belmond1
    26.11.2021 18:17

    скачать все фотографии из профиля в инстаграме (код)

    ссылка возвращает "Flow is private or does not exist"


  1. zserg
    29.11.2021 10:22

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