- PVSM.RU - https://www.pvsm.ru -
Многие задают вопрос, как использовать старые смартфоны. В самом деле, не выбрасывать же на свалку устройство с двумя-четырьмя CPU, гигабайтами оперативки, рабочими чипами NAND, модемом 4G и другой полезной электроникой. И действительно, старые гаджеты вполне могут ещё поработать и принести пользу. Например, на домашней ферме для автоматического тестирования приложений, скрапинга публично доступной информации и др.
При упоминании фермы сразу возникают мысли о ботах, мошенничестве, клик-фроде. Действительно, раньше такие фермы часто использовались для разнообразного фрода. Например, накрутки просмотров на Youtube и другой статистики, «скликивания» рекламных бюджетов.
Домашняя ферма для клик-фрода, источник [1]
Но это не наш случай. Во-первых, клик-фермы уже неактуальны. В этой «индустрии», если её можно так называть, нет особых денег. И сами фермеры постепенно уходят из бизнеса, см. прощальное видео TheTechSlugs [2]. Зарабатывать деньги на обмане людей — в конечном итоге всегда минус, по крайней мере для кармы. Во-вторых, есть вполне легальные, полезные варианты ферм. О них и говорим.
Скрапинг веб-сайтов — очень распространённая техника для получения нужной информации, которую вы используете в своих проектах. Для индивидуального скрапинга в личном боте можно использовать инструменты вроде Axiom [3] (десктопное приложение и расширение Chrome), Cognifirm [4], Automa [5] (расширение Chrome), Browserflow [6] (расширение Chrome), UI.Vision RPA [7] (расширения для Chrome, Firefox, Edge).
Они записывают любые действия в интерфейсе браузера, а затем воспроизводят их по расписанию. Это позволяет автоматизировать разнообразные задачи. Например, автоматически скрапить свежие данные с сайтов (цены на товары, курсы валют и др.), добавлять их в электронные таблицы Google Sheets, где выполняются некие расчёты, или обновлять информацию на своём сайте.
Типичные примеры:
● автоматизировать тесты
Автоматизация UI-тестирования с UI.Vision RPA
● скачать все фотографии из профиля в инстаграме (код [8]);
● соскрапить всех программистов из LinkedIn в своих кругах (код [9]);
Скрапинг разработчиков с Browserflow:
● собрать в таблицу результаты поиска Google Maps;
● автоматизировать рутинные действия (например, отфоловить всех, кто подписался на вас в твиттере), код;
● делать скриншоты веб-страниц и автоматически обрабатывать картинки (кроп, изменение размеров) перед публикацией, автоматически сохранять копии страниц;
● и др.
Записанные алгоритмы автоматизации можно публиковать в открытом доступе для других пользователей. Или использовать чужие алгоритмы.
Источник: Axiom [10]
Но что делать, если нужен профессиональный скрапинг? Например, скрапить сайт каждые несколько секунд, используя тысячи поисковых запросов. В таком случае с вероятностью почти 100% сайт нас заблокирует. Но есть вариант обойти блокировку с помощью мобильного прокси. Например, самодельной домашней 4G-фермы.
Фото: Proxidize [11]
Мобильный 4G/LTE-прокси — эффективное решение для маскировки ботов, которые делают полезную работу. Дело в том, что адресов IPv4 не хватает на всех. Поэтому интернет-провайдеры и мобильные операторы используют технику CGNAT (Carrier Grade Network Address Translation) — сотни или тысячи людей в реальности подключены по одному и тому же адресу IPv4. Если один из адресов попадёт в бан на каком-то сайте, то пострадают все пользователи на этом адресе.
Владельцы сайтов понимают, что в такой ситуации нельзя блокировать IP-адреса, на которых сидят реальные люди, поэтому ваш конкретный бот (например, для скрапинга) хорошо замаскирован.
Каждые 5 минут каждое устройство отключается от сети GSM и снова подключается, получая новый IP-адрес. В случае 4G-донглов используется софт для эмулирования Android, вроде Android-x86 на VirtualBox [12], Bluestacks [13] и Android Studio Emulator [14]. Для маскировки одновременно применяются и другие техники, такие как смена Device ID для обхода фингерпринтинга и др.
Установка DIY мобильного прокси из коммерческого набора 4G-донглов занимает считаные минуты — основное время занимает процесс установки сим-карт в донглы, — а десяток смартфонов обеспечивают канал передачи данных до 150 Мбит/с.
Некоторые разработчики поднимают мобильные фермы для автоматического тестирования своих приложений на устройствах разного типа. Есть специализированные облачные сервисы, которые предлагают такую платную услугу, например, Browserstack [15], Sauce Labs [16]и Zebrunner. [17]
Подписка стоит около $150 за одно устройство в месяц. Или можно построить собственную ферму [18], на которой прогонять любое количество тестов — совершенно бесплатно, если не считать стоимость смартфонов.
Источник: Smartphone Test Farm [18]
Конечно, покрыть тестами абсолютно все модели смартфонов нереально, слишком велика фрагментация. В зависимости от бюджета, можно закупить 10 или 20 самых популярных моделей, которые все вместе покроют заметную долю рынка.
Если собирать Android-сервер на плате с сокетом LGA2011-3 с процессорами Xeon, то можно выбрать такую конфигурацию [19]:
● Материнская плата Asus X99-A II
● Процессор Intel Xeon E5-2630
● Память 2x8GB DDR4
● SSD Intel 660p 2 ТБ
На сервер устанавливается внешняя карта USB 3.0 PCIe…
Карта USB 3.0 PCIe с четырьмя портами по 5 Гбит/с, источник [20]
… а к этой карте подключаются USB-хабы со смартфонами.
7-портовый USB-хаб, источник
Вот другой вариант конфигурации Android-сервера. Как и автоматическое тестирование. услуги 4G-прокси для обхода блокировок тоже можно заказать у специализированных провайдеров, например, Brightdata [21], Packetstream [22] или Oxylabs [23].
Но своя DIY-ферма имеет ряд очевидных преимуществ:
● защита своего бота от соседей по прокси, которые могут заниматься чем-то нелегальным — накрутка просмотров, боты в комментариях социальных СМИ, SQL-инъекции и тому подобное;
● экономия финансов, потому что услуги специализированных провайдеров обходятся довольно дорого, а на домашней ферме можно даже зарабатывать, предоставляя услуги коллегам;
● обход профессиональной антифродовой защиты типа DataDome [24], Akamai [25] и Imperva [26], которые применяют самые современные техники фингерпринтинга: сканирование портов [27] у посетителей сайта (например, сканирование портов пользователей через личный кабинет «Ростелекома» [28]), проверка набора шрифтов [29], криптобиблиотек, опрос API гироскопа на смартфоне [30] (теоретически, веб-сайт может определить, что вы сидите в туалете), запросы CSS [31] и др.
Таким образом, домашние фермы из 4G-донглов и смартфонов снова входят в моду. Только сейчас они используются не для мошенничества, как раньше, а для полезных дел: обхода блокировок, профессионального скрапинга и автоматизации тестов.
Автор: М.Видео-Эльдорадо
Источник [32]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/gadzhety/370005
Ссылки в тексте:
[1] источник: https://www.vice.com/en/article/d3naek/how-to-make-a-phone-farm
[2] прощальное видео TheTechSlugs: https://www.youtube.com/watch?v=rzrDT50_IK8
[3] Axiom: https://axiom.ai/
[4] Cognifirm: https://cognifirm.com/
[5] Automa: https://chrome.google.com/webstore/detail/automa/infppggnoaenmfagbfknfkancpbljcca
[6] Browserflow: https://browserflow.app/
[7] UI.Vision RPA: https://ui.vision/rpa
[8] код: https://browserflow.app/shared/9f3f66b4-ae9f-496c-917e-641478b01e4
[9] код: https://browserflow.app/shared/208e3d4f-c716-4659-8a99-61733a1956cf
[10] Axiom: https://axiom.ai/static/axiom-saas.gif
[11] Proxidize: https://proxidize.com/wp-content/uploads/2021/03/14.png
[12] Android-x86 на VirtualBox: https://www.android-x86.org/documentation/virtualbox.html
[13] Bluestacks: https://www.bluestacks.com/de/index.html
[14] Android Studio Emulator: https://developer.android.com/studio/run/emulator
[15] Browserstack: https://www.browserstack.com/
[16] Sauce Labs : https://saucelabs.com/
[17] Zebrunner.: https://zebrunner.com/
[18] собственную ферму: https://github.com/DeviceFarmer/stf
[19] такую конфигурацию: https://thenewstack.io/mobile-device-farms-to-build-or-not-to-build/
[20] источник: https://www.startech.com/en-us/cards-adapters/pexusb3s44v
[21] Brightdata: https://brightdata.com/
[22] Packetstream: https://packetstream.io/
[23] Oxylabs: https://oxylabs.io/
[24] DataDome: https://datadome.co/
[25] Akamai: https://www.akamai.com/
[26] Imperva: https://www.imperva.com/
[27] сканирование портов: https://blog.nem.ec/2020/05/24/ebay-port-scanning/
[28] сканирование портов пользователей через личный кабинет «Ростелекома»: https://habr.com/ru/post/456558/
[29] проверка набора шрифтов: https://browserleaks.com/fonts
[30] опрос API гироскопа на смартфоне: https://incolumitas.com/2021/02/05/why-does-this-website-know-i-am-sitting-on-the-toilet/
[31] запросы CSS: https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/
[32] Источник: https://habr.com/ru/post/591535/?utm_source=habrahabr&utm_medium=rss&utm_campaign=591535
Нажмите здесь для печати.