December 5, 2024

Статья про Playwright

ДРАФТ ПОД ПОСТ TG

Привет, это How to Code!

Поговорим сегодня про Playwright... плэй... что? Спойлернём, что это библиотека данных для автоматизации проектиков. Дальше сам! (читай статью, там всё будет, честно).

Знаешь технику «трёх да»? Она пришла из продаж и заключается в постановке верных вопросов так, чтобы на первые два ответ был положительным. А третий дойдёт сам, так мы подскажем твоему мозгу, почему тебе нужно обратить внимание на Playwright.

  1. Хочешь задержаться в программировании больше чем на месяц и зарабатывать на бычке?
  2. Хочешь чтобы следующий Tier-1 проект с жирным дропом не побрил тебя за имитацию UI касаний?
  3. Прочтёшь хотя бы эту статью про Playwright?

Отлично, погнали! Засекай Х минут(ы) на прочтение статьи. Это поможет тебе не отвлекаться и 100% познакомиться таким фреймворком для автоматизации и тестирования, как Playwright.


СТАТЬЯ

Привет, мы всё ещё How to Code: из потока в поток и спустя 600 учеников.

Даже успели обучить 1000 человек за 0 у.е. и в этой статье продолжим показывать опыт бесплатного обучения – ты узнаешь про библиотеку браузерной автоматизации Playwright и перестанешь бояться "высокого" порога входа в программирование.

Что такое Playwright?

Не путай, это не отдельный ЯП (язык программирования), а библиотека для тестирования и браузерной автоматизации – набор инструментов, зато какая! Молодой фреймворк которому всего 3 года, разработан и поддерживается Mircosoft.

Карточка Playwright, познакомься с ним!

  • Самый хороший, самый лёгкий, самый приятный трамплин ко входу в мир кодинга. Значение методов (wiki) очень легко понять даже с базовым A1 английским. Например: "page.goto". Да, ты всё верно понял, что он позволяет открыть страницу.
  • Визуализация. Мастхэв для новичка – напишешь 10-15 строк кода и видишь не только красную страшную ошибку, а как открывается Firefox и запускается CoinMarketCap.
  • Простой и многосторонний. Если элемент на сайте не найти через 1 метод, попробуй 2, 3 и 4.
  • Друг абузера криптопроектов. Тебя не побреют за софт на Playwright благодаря подмене запросов для симуляции UI касаний. Все будут думать, что сидишь за компьютером – ты.
  • Документация. За штурвалом Microsoft и коммьюнити опытных разработчиков в автоматизации, она прям хороша.

Что можно при помощи Playwright?

Круто же, оптимальное сочетание полезности и простоты. Нам тоже очень приглянулся Playwright, поэтому ты читаешь эту статью и будешь изучать его с нами. А вот список того, что можно делать с помощью PW:

  • Автоматизация отправки транзакций. Тут всё просто: кому, сколько, когда отправить. Можно даже поставить желаемый газ (комиссию за перевод), чтобы не замешкаться во время хайпового минта и не позволить FOMO съесть тебя. Например, из-за дикого ажиотажа на минт NFT коллекции Otherside в 2022 году люди сжигали 2-3к баксов комиссии. А это Ethereum, транзакция может зафейлиться и ты потеряешь деньги...
  • Парсинг. Не хочешь лазать по CoinGecko и следить за курсом монетки? Мониторь котировки, объёмы торгов, рыночную капитализацию через уведомления в ботика Telegram об изменении цены.
  • Тестирование dApps. Профессия тестировщик сама по себе востребована в WEB2, а рынок WEB3 специалистов оценивается в х2-3 дороже. При помощи Playwright ты изи сможешь тестировать пользовательские интерфейсы протоколов (например, все ли кнопки работают на Uniswap). Проекты гонятся за повышением конверсии и готовы платить большие деньги за нахождение неэффективностей. Ещё часто проводятся баунти-программы: в 2017-18 годах за простенький видеоролик о проекте сыпали альткоины, которые потом стреляли на бычке; а представь, какие плюшки получали тестировщики?
  • Подмена/перехват запросов. Обычно ты заходишь на сайт и глазом не успеваешь моргнуть, как данные тут же передаются провайдеру сайта. А если ты ретрохантер и получение сервером идентичных данных с 100 аккаунтов будет смертельно для твоей фермы? Playwright поможет – отправит на сервер только те данные, которые замаскируют твою активность! Это прям его фишка, очень полезно.
  • Торговые боты. При помощи браузерной автоматизации можно и открывать/закрывать позиции. Сразу вспоминаешь сколько трейдеры сидят нервно за монитором и думаешь: «Playwright, спасибо что ты есть!». Да, скилл профессионального трейдинга не переплюнуть, но алгоритмический трейдинг поможет иметь пассивный доход.
  • Обход капчи. Вспомни сколько времени ты терял и хватался за голову, что 10,000 NFT разобрали за пару минут, пока проходил тысячи проверок. А ты ведь не спал ночь и реакция благодаря Counter-Strike у тебя хорошая... Здесь Playwright сможет быть твоим "сапёром" и открывать любые двери, а тебе останется забрать профит.
  • Аудит смарт-контрактов. Особенно на бычке скама прям много, Playwright будет твоим антивирусом на предмет уязвимостей. Выучил PW сегодня – не поймал дрейнер завтра, DYMайте!

То есть ты понял, можно делать БУКВАЛЬНО ВСЁ. Это твой верстак, делай всё что хочешь и используй функционал Playwright по максимуму. Чтобы не быть голословными о крутости этой библиотеки, изучи кейс нашего ученика (которого обучили в рамках челленджа бес-пла-тно).

В первый же день работы софта для Meteora, написанного на Playwright, он заработал 42$ нажав на кнопку "***" (я не шарю какой кнопкой запускается софт, напишите название кнопки).

А минусы то какие у Playwright?

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

Можно выделить невозможность одновременного запуска 1000 аккаунтов как ОБЩИЙ минус, что для Playwright, что Selenium. Мощность железа здесь решает, да, но если твой процессор не Pentium 1993 года, твоя ферма в 50-100 будет работать бесперебойно.

  • Представляешь, даже конкурентной гонки Selenium VS Playwright особо и нет. Оба коммьюнити занимаются своими делами и развивают продукт, да и если ты знаком с одной из библиотек – легко пересядешь за день на другую.
  • Это скорее особенность, чем минус. Софт написанный на Playwright для взаимодействия с фронтендом придётся потенциально ревьюить и переписывать, если кнопка «Swap» переедет левее. Но, если ты пишешь софт на запросах – такая проблема тебе не страшна.
  • В отличие от Selenium, Playwright достаточно молодой (десять лет против трёх) и в Интернете может быть маловато информации. Но ничего, в учебных чатах How to Code сидят специалисты по PW и помогут ускорить твой процесс освоения такого замечательного фреймворка.

Быть специалистом по Playwright – это...

Об этом нам расскажет Тимур – ученик второго потока, как раз он помогал дезинфектору Александру написать первый софт. Сразу скажем ему спасибо за подробное интервью и качественный обзор библиотеки.

Слушаешь его и понимаешь, какая же Playwright ценная возможность закрепиться в мире кодинга и стать тем самым, о ком говорят: «Ух ты, он IT'шник!».

Q = Question (Вопрос)

A = Answer (Ответ)

Q: Правильно понимаю, что уйти в изучение Playwright можно с базовым знанием Python? Какие нужны навыки?

A: Я тот человек с которым ты разговариваешь – именно так и сделал. Основы прошёл, пошел в Plawright. Хотя у нас урок по нему в конце WEB3, я понял, что не смогу освоить, мне слишком сложно далось. Вот смотрю уроки, и просто н***я не понимаю :D. А потом просто зашел на YouTube канал Ahillary, там посмотрел урок и понеслась...
После чего все пацаны ушли в WEB3, а я один ушёл в Playwright - где я гораздо раньше начал зарабатывать, потому что Ahillaty подкидывал заказы.

Q: В чём разница в подходах обучения между Playwright и WEB3?

A: Гораздо легче и быстрее старт, потому что для WEB3 надо иметь нормальное такое представление про кодинг и первый свой софт напишешь только через 6 месяцев, а на Playwright это случится уже через 2-3 недели. Пока кто-то изучает WEB3 в течение полугода, за это время ты напишешь софты под 10 проектов и оттестишь свои скиллы.
Не могу назвать неправильной дорогой после основ Python изучать сразу WEB3, но это сложно. И надо крепким быть пацаном и башка должна реально шарить, должны быть природные навыки, чтобы правда преуспеть там за короткое время

Q: Чем ты занимался до появления программирования в твоей жизни? Был ли расположен к кодингу?

A: В принципе, школу окончил неплохо и одни пятерки были. Было ли мышление программиста? Нет. Был ли я тупым? Тоже не скажу. Мог освоить что-либо, но мне сейчас 30 лет и мозги не как у 20-летнего, как ни крути. Предрасположенности к кодингу вообще не было, всю жизнь до этого возился с машинами.
До того как посмотрел уроки ахиллари на ютубе для меня это было нечто непостижимым, непостижимое дело кодинг. Когда перед о мной сидели и говорили, что работают в IT – я чувствовал, что напротив вундеркинд. Я вот так вот думал.

Q: Насколько интенсивно ты кодил, когда проходил обучение?

A: Сначала я просто изучал базу по урокам, домашку не решал и загореться программированием не смог. Начал задаваться вопросом как проснуться, деньги же заплатил, к тому же.
Первым делом заинтересовал парсинг, потом Playwright открыл ворота к пониманию структуры кода. С Playwright ты быстрее и поступательно освоишь те же циклы и обработку ошибок, аналогия со спортом: сначала чемпион в школе, области, регионе; затем в мире.
Мы говорим и советуем стандартным людям = идти по маленьким победам. Каждый день строка кода, как капелька мотивации.

Q: В чём сила Playwright?

A: Если ты 3 месяца занимаешься кодом через эту библиотеку, то потом не отпустишь его. Так что, сто процентов, чтобы дотянуть до 3-х месяцев нужен Playwright. Человеку который только-только заходит в кодинг, ему точно надо начинать с него.

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

Роадмап: WEB3 автоматизация при помощи Playwright.

Кодинг не халява! Имей желание учиться и ставить обучение в приоритет, договорись с СДВГ, что за 2 часа всё-всё не выучишь и нужно приложить усилия, чтобы уже потом 2 часа тратить на рейс «Рим – Афины».

  • Изучи основы Python, без них никуда. Достаточно того, что есть в публичном доступе (труды Ahillary тут как тут);
  • Выбери проект для автоматизации. Playwright позволяет быстро перешагнуть "теоретический барьер", он как старший брат, который учит играть в компьютер и держит руку на плече – «Не переживай, я визуализирую твой код. Практика это не страшно!». Помнишь рассказывали про дезинфектора Александра? Он выбрал Meteora и здесь есть инсайт: совмести полезное с профитом и ищи перспективный проектик. Подкинем тебе сразу идейку – Polymarket (у них как раз будет дроп) предлагает ставки криптой на всевозможные события (политика, спорт, крипта) и часто можно увидеть событие с одним из вариантов исхода (Да/Нет) с шансом 99%. В таких случаях, рынок закладывает фактор победы исхода ввиду анализа ситуации (в 8 раунде было понятно, что Джейк Пол одолеет Майка Тайсона, но тот самый 1% предполагал возможность зрелищного нокаута вторым). Логика понятно. И вот, можно написать парсер на события раздела "Ending Soon", забирать 1-2% к банку и фармить объёмы, чтобы в бычьем 2025 году залутать дропчик. Конечно, риск переворота шансов на исходы всегда есть, но статистика на нашей стороне и при соблюдении банк-менеджмента даже такой "невозможный луз" покроет череда консервативных сделок;
  • Изучи проект перед началом работы. Опытный шеф-повар может с закрытыми глазами приготовить блюдо на своей кухне, покликай/полистай/полазай по сайту. Чтобы понять, что же всё-таки можно автоматизировать?;
  • Начни работу с сайтом проекта через Playwright. Поставь себе задачу каждый день работать минимум над одним действием-автоматизацией: во вторник запустил браузер, в среду сделал навигацию в разделах и подключил кошелёк. Всегда помни, мы обычные люди и это нормально, нам нужны маленькие шажки. Через поступательные действия родится крупный проект и ты почувствуешь себя супергероем, ведь у тебя получилось!;
  • Источники. Самый лучший источник информации это документация библиотеки. Пока мышление ещё не адаптировалось к "кодерскому языку", используй ChatGPT и учись правильно гуглить. Вот, правда, в рамках How to Code постоянно об этом повторяем – учись правильно работать с браузером, ты же БРАУЗЕРНОЙ автоматизацией собрался заниматься, так будь рыбой в воде. Этого тебе достаточно, чтобы не распыляться и бить в одну точку. А если хочешь ещё материала, всегда можешь обратиться к YouTube каналу Ahillary (это уже база).
  • Продолжай, пока не столкнёшься с профессиональной деформацией. Вот заходишь ты на Netflix и пробегает мысль, как пишешь конфиг netflix_automation.py. Со временем ты поймёшь, что Playwright'а тебе мало => поздравляю, ты его прошёл! Переходи к изучению WEB3.

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

Так, Playwright откроет тебе двери в "большой код" и автоматизация перестанет быть твоим камнем преткновения. Более подробный роадмап с уроками мы разберём... читай следующий параграф!

Вот и всё. Ты познакомился с Playwright!

Ты стал осведомлённее на тему автоматизации в крипте, можем тебя поздравить. Это правда уверенный шаг для выносов на бычке. Думаем, ты уже понял, что мы что-то готовим связанное с Playwright.

20 Декабря выйдет бесплатный урок по основам Playwright на нашем канале: https://t.me/how_to_code_web3/840

Там мы расскажем ещё больше про лёгкую в освоении, интересную в изучении, доступную в понимании – популярную в 2025 библиотеку для WEB3 автоматизации – Playwright.

Увидимся на уроке!