Блог им. AlexeyPetrushin

ИИ за полдня переписал весь мой код получения данных

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

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

И код отдельного, необычного парсера, обертки над емулятором браузера.

И сохранение данных в базу и в разных форматах.

Еб… ть он мочит…
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
507
19 комментариев
Давно уж так
Михаил Шардин, по моему таки нет, наверно полгода не больше, раньше он не мог такого.
avatar
Вопрос насколько правильно. Парсинг это такая мутная вещь, часто без четких контрактов — обычно нужно очень осторожно все это делать и понимание edge case(ов) приходит только во время копания во всем этом
avatar
Михаил, код был на TypeScript и было много ассертов и обьяснений крайних случаев, так что он не с нуля это сделал и изначально было много подспорья.

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

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

на тему парсинга. 
завтра админ сервера поменяет настройки и сервер будет слать вам отличающиеся страницы авторизации.
например включит или отключит керберос. или сменит метод авторизации. или имена полей ввода изменятся
 
Парсинг сломается
Viacheslav Ivanenkov, конечно сломается, и нужно будет поправить.
avatar
Viacheslav Ivanenkov, для этого создаётся отдельный класс парсера, который инкапсулирует интерпретацию кода по принципу одной ответственности, в случае изменения кода на сервере изменения вносятся только в этот класс. Именно поэтому одного ИИ для написания кода недостаточно, необходимо понимать общую структуру приложения, основы ООП программирования, понимать, что такое абстракция, наследование, инкапсуляция и полиморфизм, понимать, когда лучше использовать базу данных, а когда достаточно использовать оперативную память через Redis, чтобы лишний раз не изнашивать SSD и т.д. В целом, ИИ делает программирование не нудным, а интересным, вместо корпения над нудным синтаксисом вайбкодерам приходится решать интересные логические и архитектурные задачи.
avatar
Auximen, 
в случае изменения кода на сервере изменения вносятся только в этот класс.
Только узнаешь это постфактум, когда все сломается
необходимо понимать общую структуру приложения, основы ООП программирования, понимать, что такое абстракция, наследование, инкапсуляция и полиморфизм, понимать, когда лучше использовать базу данных, а когда достаточно использовать оперативную память через Redis
Мы про парсинг HTML страничек сейчас говорим ? 
Auximen, ИИ также понимает архитектуру, контекст, и смыслы.
avatar
Viacheslav Ivanenkov, 
завтра админ сервера поменяет настройки и сервер будет слать вам отличающиеся страницы авторизации.
например включит или отключит керберос. или сменит метод авторизации. или имена полей ввода изменятся
Поэтому парсинг — тупик.
avatar
Synthetic, изменения раз в месяц где то нужно вносить на практике.

Нет, парсинг совсем не проблема, изменения и поправки делаются просто, то что сломалось не проблема — ничего страшного из за остановки не произойдет.
avatar
Alex Craft, 
Нет, парсинг совсем не проблема

Например, на сайте MOEX некоторые ценные данные (таблицы) представлены в формате GIF. Парсите на здоровье…
avatar
Synthetic, я делал несколько промышленных проектов с экстракцией данных для екомерс т.п.

Большинство парсеров делаются достаточно просто, некоторые сложнее., иногда делают картинки и их тоже можно распознать через OCR инструменты. Вопрос в том — стоит ли оно того или нет, часто, для многих случаев сделать парсер просто.

Таблицы в картинках если есть желание — распознать можно, особенно сейчас с ИИ, он вообще это все сходу сделает.
avatar
Alex Craft, 
Заметьте — я не говорю  парсинг плохо. Я говорю — парсинг — тупик. Раз уж есть ИИ, который видит экран и может  кнопки нажимать, надо ему и  поручать с сайтами разбираться. Локальный ИИ конечно. Пока один не справляется, и нужно минимум три разных в конвейере. Особенно OCR -весьма специализированный skill.
avatar
А как ты правильность работы проверяешь?
avatar
tradeformation, ревью кода, и запуск. он работал до, ИИ переписал его, и он работает после, визуально также все ок выглядит.

Ну и схема данных и валидации есть.
avatar
Да, особенно впечатляют такие модели, как Claude 4.6, что там в 4.8 и тем более в Fable 5 сложно представить.
avatar
Auximen, ага, я ЧатГПТ использую.
avatar
Нихрена не понял, но прочитал и вроде как стал умнее. 

Читайте на SMART-LAB:
Фото
Мы запустили PT Naira — своего первого ИИ-помощника
Не секрет, что сегодня злоумышленники уже активно используют ИИ. При этом, в отличие от защитников, они не ограничены ни правилами, ни...
Фото
📍 Как зарабатывают фармацевтические компании и стоит ли покупать их акции
Самые крупные в российском фармсекторе «Промомед» и «Озон Фармацевтика». Обе компании показывают высокие темпы роста. При этом их...
Улучшили логистику к месторождению Хвойное
Ввели в эксплуатацию новый участок автомобильной дороги. Она связывает месторождение Хвойное и промышленную площадку кучного выщелачивания...
Мой Рюкзак #65: Ставка на энергетический и продовольственный кризис из-за перекрытия проливов
Мой Рюкзак #66: Потрепанная шкура в игре, но есть ли смысл выходить по текущим? Только если ребаланс
Последний раз писал про портфель 3 месяца назад, делал ставку на энергетический и продовольственный кризис из-за перекрытия проливов Ссылка...

теги блога Alex Craft

....все тэги



UPDONW
Новый дизайн