1.2.912 - обновление NodeJS, повышение производительности, адаптация к изменениям в рекаптчах
Мы завершили переход на
NodeJS в качестве основного движка для парсеров и представляем новую стабильную версию
1.2.912 с поддержкой
NodeJS 14.2.0. Данное обновление сочетает в себе множество улучшений, включая повышение производительности, уменьшение потребления памяти, полностью новый сетевой стек, а также поддержку нативных NodeJS модулей, позволяющую использовать всю мощь каталога
npmjs в A-Parser'е
Также в данное обновление включены изменения по работе с
ReCaptcha2 в парсере Google, наша команда одна из первых нашла решение по обходу новой версии рекаптчи и протестировала его совместно с сервисом
RuCaptcha, за что им отдельный респект. На данный момент корректный обход каптчи протестирован с RuCaptcha, Anti-Captcha, XEvil и CapMonster.
Помимо этого было произведено множество оптимизаций в ядре A-Parser'а, значительно увеличилась производительность при использовании большого числа заданий или больших списков прокси. Парсер
Rank::CMS был полностью переписан и стабилизирован, добавлена поддержка нового формата apps.json и поддержка пользовательских правил.
Улучшения- NodeJS обновлен до v14.2.0, v8 до 8.1
- Добавлена поддержка параметра data-s в рекаптчах для
SE::Google, также добавлена опция ReCaptcha2 pass proxy - Увеличен лимит потоков до 10000 для OS Windows
- Значительно улучшена производительность при большом числе активных прокси и/или заданий, полностью переписан стек по работе с прокси, оптимизирована работа с большими списками
- Добавлен новый парсер
Rank::KeysSo - Полностью переписаны на JS
SE::Yahoo::Suggest,
Rank::Alexa::API и
Rank::Archive - Улучшена производительность при использовании регулярных выражений, а также улучшена совместимость
- В
SE::Google::KeywordPlanner добавлено автоматическое получение токена - В
SE::Bing добавлена возможность парсить ссылки на кэшированные страницы, а также добавлена возможность парсить мобильную выдачу - В парсере
Util::ReCaptcha2 при выборе провайдера Capmonster или Xevil теперь необязательно указывать Provider url - В
SE::Google::Trends добавлена возможность указывать произвольный диапазон дат - В
Rank::CMS добавлен выбор движка регулярок и поддержка собственного файла с признаками - В
SE::Yandex::ByImage добавлена опция Don't scrape if no other sizes, которая позволяет отключить сбор результатов, если искомой картинки нет в других размерах - [NodeJS] Добавлена защита от бесконечных циклов и долгих регулярок
- [NodeJS] Исправлена работа this.cookies.getAll()
- [JS парсеры] Добавлена опция follow_meta_refresh для this.request
- [JS парсеры] Добавлена опция bypass_cloudflare для this.request
- [JS парсеры] Underscore заменен на Lodash
- [JS парсеры] В логе добавлена пометка при вызове других парсеров
- [JS парсеры] Использование предыдущего прокси после запроса к другому парсеру
- [JS парсеры] Добавлен метод destroy()
Исправления в связи с изменениями в выдачеИсправления- Исправлен баг, из-за которого игнорировался выбранный проксичекер
- Исправлена работа функций Decode HTML entities и Extract domain в Конструкторе результатов
- Исправлена проблема с определением кодировки
- Исправлена ошибка использования $tools.query
- Исправлен баг в
Rank::MajesticSEO при котором использовались все попытки при отсутствии результатов - Исправлена работа http2
- Исправлена ошибка, когда парсер падает из-за невозможности писать в alive.txt
- Исправлено разгадывание каптч в
SE::Yandex::Register и
Check::RosKomNadzor - Исправлена разница в запросах, отправляемых через
Net::HTTP и JS - Исправлен баг в
SE::Yahoo - Исправлены ошибки в
Rank::CMS при выборе приложения без категории - [NodeJS] Исправлен подсчет времени исполнения кода парсера
- [JS парсеры] При пустом body не передавался заголовок content-length при post запросе
- [JS парсеры] Исправлена работа CloudFlare bypass
- [JS парсеры] Исправлена работа с сессиями
- [JS парсеры] Исправлена работа с overrides для this.parser.request
- [JS парсеры] Исправлена ошибка определения кодировки в JS парсерах
