A-Parser - продвинутый парсер поисковых систем, WordStat, YouTube, Suggest, PR, etc

  • Автор темы Автор темы Forbidden
  • Дата начала Дата начала
Сборник рецептов #20: автообновление цен в ИМ, анализ текстов и регистрация аккаунтов

В 20-м сборнике рецептов наш пользователь glukmaster поделится опытом решения реальной задачи на практике с помощью A-Parser. А также мы будем анализировать тексты и автоматизировать регистрацию аккаунтов Яндекса. Поехали!

Автоматическое обновление цен 5000 товаров в интернет-магазине на Bitrix
Цикл видео из 7 частей, в которых очень детально и наглядно показано, как решать такую задачу, как обновление цен в интернет магазине. Для парсинга используется A-Parser. Посмотреть видео можно по ссылке выше.
mypic.png


Анализ текста
Одним из самых популярных кейсов по применению А-Парсера является парсинг текстов. При этом возникает задача их анализа. Полноценно решить эту задачу позволяют специальные ресурсы. Ранее мы уже публиковали пресет по парсингу одного из таких сервисов. Теперь же это решение полностью переписано в виде JS-парсера, добавлена возможность анализировать не только тексты, а и полностью страницы, т.е. подавать на вход ссылки. Все детали и сам парсер - по ссылке выше.
istio.png


Автоматизация регистрации аккаунтов Яндекса
Как известно, для парсинга WordStat нужны аккаунты Яндекса. А-Парсер умеет их регистрировать, но их срок жизни невелик, т.к. спустя 1-2 суток включается проверка номера телефона. Поэтому возникает необходимость периодической регистрации новых аккаунтов. И это можно легко автоматизировать. По ссылке выше показано как это сделать.
2okcs_171107102640.png


Кроме этого:
Еще больше различных рецептов в нашем обновленном Каталоге!
Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.
Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники рецептов:
Сборники статей:
 
1.2.50 - улучшение стабильности, поддержка (другой софт) и множество исправлений в стандартных парсерах
new_version800px2.png

Улучшения

  • Уменьшение потребления памяти и улучшение стабильности работы x64 версий
  • Добавлена поддержка 2captcha и (другой софт) в
    util-recaptcha2.png
    Util::ReCaptcha2
  • Добавлен Parse all results и Parse related to level для
    se-bing.png
    SE::Bing
  • В
    se-bing.png
    SE::Bing добавлена возможность задавать Safe Search, а также добавлен повтор запроса при получении кешированной "короткой" выдачи
  • В
    se-yandex-translate.png
    SE::Yandex::Translate, добавлен обход ограничения на кол-во символов в запросе, что позволяет переводить очень большие запросы (>10k символов)
  • В
    se-google.png
    SE::Google::Modern добавлена возможность задать автоматическое определение языка интерфейса в зависимости от IP
  • Движок V8 обновлен до версии 6.4

Исправления в связи с изменениями в выдаче

Исправления
  • Исправлена работа
    se-bing.png
    SE::Bing:
    • устранена ситуация, когда выдавалась одинаковая выдача для всех страниц
    • исправлена работа параметра Links per page
    • исправлен парсинг количества результатов в некоторых ситуациях
    • исправлена ошибка, при которой не было результатов, если в выдаче одна ссылка
  • Исправлена работа с каптчей в
    se-yandex-wordstat.png
    SE::Yandex::Wordstat
  • Исправлена ошибка, когда при запросе с опечаткой
    se-google.png
    SE::Google::Modern не забирал результаты с первой страницы
  • Исправлена ошибка в
    rank-majesticseo.png
    Rank::MajesticSeo, при которой неправильно определялся бан IP
  • В
    se-google-trends.png
    SE::Google::Trends исправлена работа при изменении формата результата по-умолчанию
  • В
    se-google.png
    SE::Google::Modern для Search from country изменен параметр: вместо cr теперь используется gl - это на данный момент позволяет более точно задавать регион
  • Исправлена проблема с чрезмерным потреблением памяти в JavaScript парсерах
  • Исправлена ошибка влияющая на стабильность работы на Linux и Windows
  • Исправлена ошибка в
    se-yandex.png
    SE::Yandex, при которой не было результатов, если в выдаче одна ссылка

Команда A-Parser поздравляет всех с Новым годом и Рождеством! Спасибо что вы с нами!
 
Сборник статей #2: цикл статей-уроков по созданию JS парсеров

Как известно, в A-Parser есть возможность создавать свои собственные парсеры, которые могут иметь практически любую логику и в то же время позволяют пользоваться всеми преимуществами А-Парсера. Для написания таких парсеров используется язык JavaScript. В нашей документации подробно описаны все функции и методы, которые можно использовать при написании парсеров. А в сегодняшнем сборнике мы на практических примерах покажем наиболее часто применяемые функции. Поехали!
drcxx_180109125728.png

  1. Получение результатов от стандартного парсера.
    В этой статье описано использование функции yield this.parser.request, которая позволяет работать с уже существующими парсерами, получать от них данные и дополнительно обрабатывать их.
  2. Парсинг сайта с проходом по страницах.
    Здесь показан общий подход к созданию парсера, который будет "ходить" по страницам на сайте и забирать с них некоторую информацию.
  3. Парсинг title и description для топ10 сайтов по запросу.
    В данном примере показано как написать собственный парсер, который объединит в себе две разных задачи: парсинг топ10 сайтов и парсинг данных из каждого полученного сайта. При этом также будет показана возможность реализации выбора между несколькими поисковиками, что делает такой парсер еще более универсальным.
  4. Реализация подстановки запросов и их многопоточной обработки.
    Этот пример продемонстрирует, как "на лету" добавлять запросы с помощью tools.query.add, а также, как обрабатывать их в многопоточном режиме.
  5. Работа с CAPTCHA.
    В этой статье на простом примере будет показан общий подход к работе с сайтами, на которых появляется каптча. Будет пошагово разобран алгоритм и продемонстрирован результат работы.
  6. Работа с ReCaptcha2.
    А в этом примере по аналогии с обычной каптчей демонстрируется алгоритм работы с рекаптчей, а также вкратце поясняется принцип ее действия.

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

Если вы хотите, чтобы мы более подробно раскрыли какой-то функционал парсера, у вас есть идеи для новых статей или вы желаете поделиться собственным опытом использования A-Parser (за небольшие плюшки :) ) - отписывайтесь здесь.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники статей
 
1.2.78 - поддержка сессий в JS парсерах, улучшение SE::Google::Modern, правки в интерфейсе

1.2.78.800px.png


Улучшения

  • Добавлена поддержка сессий в JavaScript парсерах
  • В
    se-google.png
    SE::Google::Modern добавлена поддержка сессий и улучшена производительность за счет уменьшения частоты появления каптч/рекаптч
  • Добавлена переменная $query.prev - показывает запрос, который использовался на предыдущем уровне
  • Для JS парсеров добавлен метод this.logger.putHTML, который позволяет вывести в лог HTML код
  • В Lite версию добавлен
    se-google.png
    SE::Google::Modern и
    util-recaptcha2.png
    Util::ReCaptcha2
  • В x86 версиях добавлено предложение перейти на x64
  • Добавлена возможность переименовывания пресетов
  • В окне выбора пресета для папок реализована "память на сворачивание"
  • Изменены иконки для JS парсеров
  • Исправлены ошибки с переводом в интерфейсе
  • Исправлено отображение HTML тегов в логах
  • Исправлен баг при импорте с вложенным парсером
  • Исправлен баг с прокруткой при сохранении JS парсеров и пресетов
  • Доработан Конструктор регулярных выражений
  • Другие мелкие правки в интерфейсе, направленные на улучшение общей работы

Исправления в связи с изменениями в выдаче

  • В
    se-google.png
    SE::Google::Modern исправлен парсинг сниппетов и рекламы, а также мобильной выдачи
  • В
    se-google-suggest.png
    SE::Google::Suggest исправлен парсинг подсказок, а также добавлена опция Remove HTML tags, позволяющая получать подсказки с или без html тегов
  • Исправлен парсинг анкоров и сниппетов в
    se-duckduckgo.png
    SE :: DuckDuckGo
  • se-ask.png
    SE::Ask,
    se-dogpile.png
    SE :: Dogpile,
    rank-mustat.png
    Rank::Mustat

Исправления

  • Исправлен баг с перемещением заданий в очереди
  • В
    se-google.png
    SE::Google::Modern исправлен баг с кодировкой
  • Исправлена работа параметров Request delay и Extra query string во всех JS парсерах
  • Исправлен выбор файлов запросов
  • Исправлено отображение иконок для JS парсеров
 
Видео урок: Создание JS парсеров. Получение результатов от стандартного парсера

Это видео начинает цикл уроков по созданию JavaScript парсеров. Здесь рассказано о том, как начать писать собственные парсеры, используя функционал JS парсеров в А-Парсере.



В уроке рассмотрено:
  • Создание кастомного JS парсера
  • Использование встроенного парсера внутри JS парсера
  • Парсинг выдачи поисковой системы с фильтрацией результатов по заданному условию
Полезные ссылки:
Статья и готовый парсер: https://a-parser.com/resources/254/

Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
Видео урок: Создание JS парсеров. Парсинг сайта с проходом по страницах

Второе видео в цикле уроков по созданию JavaScript парсеров. Здесь рассказано о том, как написать несложный парсер сайта, который будет "листать" страницы, используя функционал JS парсеров в А-Парсере.


В уроке рассмотрено:
  • Создание кастомного JavaScript парсера без использования встроенных парсеров
  • Парсинг контента сайта постранично с использованием регулярных выражений
  • Реализация прохода по страницам ("пагинации") в JS парсере

Статья и готовый парсер: https://a-parser.com/resources/255/

Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
1.2.138 - поддержка Node.js модулей, обработка ReCaptcha2 во всех парсерах Google, парсер AliExpress

logo1_2_138_plus_npm.png


В A-Parser 1.2.138 добавлена эмуляция node версии 8.9.x с поддержкой загрузки модулей и частичной реализацией fs и net модулей. Это дает возможность обращаться из JavaScript парсеров напрямую к файловой системе, а также использовать подключение по TCP из модулей к другим сервисам(например mysql, redis, chrome...).

Все это позволило загружать и использовать node модули из каталога npm, в котором собраны множество полезных библиотек для обработки данных, коннекторы к базам данных и множество других интересных вещей. На данный момент протестированы следующие модули: md5, async-redis, jsdom, puppeter.

Улучшения
  • Добавлена поддержка Node.js модулей в JavaScript парсерах
  • se-google-position.png
    SE::Google:: Position,
    se-google-compromised.png
    SE::Google::Compromised и
    se-google-trustcheck.png
    SE::Google::TrustCheck полностью переписаны, добавлена поддержка ReCaptcha2
  • Улучшена работы
    se-google.png
    SE::Google::Modern в целом
  • В
    se-youtube.png
    SE::Youtube добавлен выбор языка, а также реализована возможность включать/отключать Безопасный режим
  • Добавлен
    shop-aliexpress.png
    Shop::AliExpress
  • Улучшена проверка создаваемых переменных в пресетах
  • Улучшена работа сессий
  • Исправлено отображение имени файла запроса на карточке задания
  • Улучшена работа скрола в Тестовом парсинге
  • Добавлено удаление переносов из сниппетов в
    se-google.png
    SE::Google::Modern
  • Картинка каптчи в парсере
    se-yandex-register.png
    SE::Yandex::Register теперь скачивается через прокси
  • Множество мелких улучшений в интерфейсе
Исправления в связи с изменениями в выдаче
Исправления
  • Исправлена работа Конструктора регулярных выражений
  • Исправлена работа с кодировками в парсерах переводчиков и JS парсерах
  • Исправлена работа SE::Google:: Position
  • Исправлен выбор региона в SE::Yandex:: Direct
  • Исправлена работа опции Location в SE::Google::Modern
  • Исправлена работа сессий в SE::Google::Modern при переопределенном домене
  • Исправлена ошибка при совместном использовании опций Перезаписи файла, Начального и Конечного текстов
  • Исправлено отображение вкладок в Тесте задания
  • Исправлено отображение списка пресетов в поле Запустить по завершению
  • Исправлена работа this.proxy.set в JS парсерах
  • Исправлена передача дополнительных параметров в JS парсерах
  • Исправлена ошибка, из-за которой через API нельзя было указать Начальный и Конечный тексты
  • Исправлен экспорт пресетов
 
Сборник рецептов #21: уведомления в Telegram из A-Parser, мультифильтр и парсинг IMDb

21-й сборник рецептов. В нем мы научимся отправлять сообщения в Telegram прямо из A-Parser, изучим работу с модулями Node.js в JS парсерах на примере решения задачи фильтрации по множеству признаков, а также спарсим весь IMDb. Поехали!

Уведомления в Telegram из A-Parser

Telegram является одним из самых популярных мессенджеров благодаря своей простоте, и в то же время большому функционалу. Среди прочего, в Телеграме можно создавать ботов, с помощью которых можно делать чаты более интерактивными. Взаимодействие с ботом на на стороне сервера происходит через Telegram Bot API. Используя эти возможности, можно легко и буквально за несколько минут настроить уведомления себе в Telegram прямо из парсера. О том, как это сделать, а также несколько реальных примеров - по ссылке выше.

oz78y_180315000445.png

ai5di_180314231615.png


Фильтрация по множеству признаков

Как известно, для фильтрации в А-Парсере используется встроенный функционал фильтров. Но бывают ситуации, когда список признаков, наличие которых нужно проверять, очень большой и его сложно вписать в строку стандартного фильтра.
Начиная с версии 1.2.127 в A-Parser добавлена поддержка модулей Node.js. Благодаря этому появилась возможность читать список признаков из файла и использовать его для проверки страниц. О том, как это сделать, а также готовый парсер с мультифильтром - по ссылке выше.

3cbbe_180315100634.png


Парсинг рекомендаций фильмов из IMDb

Пример решения задачи по сбору данных о фильмах и их рекомендаций на IMDb. Данная статья показывает, как можно решать задачи, которые на первый взгляд требуют много времени и ресурсов, буквально за несколько часов. Узнать о том, как спарсить весь IMDb за 1,5 часа, а также посмотреть пресет и забрать готовую базу можно по ссылке выше.

ecaoq_180220140515.png


Еще больше различных рецептов в нашем обновленном Каталоге!
Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.


Сборники статей:
 
Подскажите, а можно где то посмотреть видео урок, как на примере проекта применять парсеры?
 
Здравствуйте. Все наши видеоуроки находятся по этой ссылке
 
1.2.160 - поддержка SQLite, проверка доменов на клей, Parse all results в SE::Yahoo

ap+sqlite.png

Улучшения
  • Добавлена поддержка SQLite в JavaScript парсерах и шаблонизаторе, пример использования здесь
  • Добавлена защита от случайного закрытия окна парсера
  • В
    se-yahoo.png
    SE::Yahoo добавлены Parse all results и Parse related to level
  • se-yandex-tic.png
    SE::Yandex::TIC полностью переписан, добавлена возможность проверять домены на клей
  • В
    rank-megaindex.png
    Rank::MegaIndex добавлена поддержка ReCaptcha2
  • Улучшен парсинг сниппетов в
    se-duckduckgo.png
    SE:: DuckDuckGo
  • Улучшен сбор почт в
    html-emailextractor.png
    HTML::EmailExtractor
Исправления в связи с изменениями в выдаче
  • Обновлен алгоритм Bypass Cloudflare
  • se-bing-translator.png
    SE::Bing::Translator почти полностью переписан в связи с изменением логики работы переводчика Bing
  • Исправлена работа
    se-seznam.png
    SE::Seznam с некоторыми видами запросов
  • Исправлен парсинг related keywords, а также мобильной выдачи в
    se-google.png
    SE::Google::Modern
  • Исправлен парсинг related keywords в
    se-bing.png
    SE::Bing
  • Исправлена работа
    se-ixquick.png
    SE::IxQuick при работе с русскоязычными запросами
  • se-yandex-direct.png
    SE::Yandex:: Direct,
    se-google-byimage.png
    SE::Google::ByImage,
    se-yandex-wordstat.png
    SE::Yandex::WordStat
Исправления
  • Исправлена работа
    se-google.png
    SE::Google::Modern на IPv6 прокси
  • Исправлена ошибка, из-за которой
    se-google.png
    SE::Google::Modern собирал ссылки с пометкой опасных сайтов в общий массив ссылок
  • Исправлена работа с оператором поиска + в
    se-bing.png
    SE::Bing
  • Исправлен парсинг запросов со спецсимволами в
    se-duckduckgo.png
    SE:: DuckDuckGo
  • Исправлена работа
    rank-majesticseo.png
    Rank::MajesticSEO
  • Исправлен баг с overrideOpts в JS парсерах
  • Исправлена работа с переменными при их создании в Parse custom results, а также при использовании нижнего подчеркивания в именах в Конструкторе результатов
  • Исправлена работа tools.js, баг появился в одной из предыдущих версий
  • Исправлен баг, из-за которого А-Парсер падал на некоторых ОС, появился в одной из предыдущих версий
 
Отличное ПО. Лучший софт в своем сегменте. Однозначно стоит своих денег. Рекомендую всем кому нужен парсер на все случаи жизни. Гибкий, быстрый. Супер саппорт, прекрасная wiki. Пользуюсь более 2х лет, очень помогает в сборе информации.
 
Видео урок: Создание JS парсеров. Работа с CAPTCHA

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



В уроке рассмотрено:
  • Создание JS-парсера для разгадывания капчи
  • Работа с объектом this.captcha внутри JavaScript кода
  • Описание процесса разгадывания каптчи, реализованного в A-Parser
Статья и готовый парсер: https://a-parser.com/resources/257/

Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
Сборник рецептов #22: проверка индексации в нескольких ПС, многоуровневый парсинг и поиск сабдоменов

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

Получение страниц сайта и проверка индексации в Google и Яндекс

Данный пресет позволяет спарсить ссылки на все страницы сайта и одновременно проверить их на предмет индексации поисковиками (в примере Google и Яндекс, можно по аналогии добавить другие ПС). Готовый пресет и описание по ссылке выше.
bo3i2_180416114011.png


Парсим title и description для TOP10 поисковой выдачи по ключевому слову

Пример использования tools.query.add в JavaScript парсерах. Данный парсер получает ссылки из выдачи, после чего собирает из каждой страницы title и description. И все это одним заданием с максимальной производительностью, благодаря многопоточному парсингу. Парсер с описанием доступны по ссылке выше.
gwzy0_180416114857.png


Поиск сабдоменов сайта

Небольшой пример, который демонстрирует, как собрать поддомены одного или нескольких сайтов. Используется
html-linkextractor.png
HTML::LinkExtractor и Parse to level для прохода вглубь по страницам сайта. При этом Конструктором результатов извлекаются из внутренних ссылок домены и выводятся с уникализацией по строке. Готовый пресет - по ссылке выше.
vmbxk_171020103911.png


Кроме этого:
Еще больше различных рецептов в нашем Каталоге!
Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники рецептов:
 
Сборник статей #3: пагинация, переменные и БД SQLite

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

Обзор вариантов прохода по пагинации

В A-Parser существует несколько способов, с помощью которых можно реализовать проход по пагинации. В связи с их разнообразием, становится актуальным вопрос выбора нужного алгоритма, который позволит максимально эффективно переходить по страницам в процессе парсинга. В этой статье мы постараемся разобраться с каждым из способов максимально подробно. Также будут показаны реальные примеры и даны рекомендации по оптимизации многостраничного парсинга. Статья - по ссылке выше.
ic2vg_180425160845.png


Переменные в парсерах JavaScript

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


Разработка JS парсера с сохранением результата в SQLite

Начиная с версии 1.2.152 в A-Parser появилась возможность работать с БД SQLite.
В данной статье мы рассмотрим разработку JavaScript парсера, который будет парсить курсы валют из сайта finance.i.ua и сохранять их в БД. В результате получится парсер, в котором продемонстрированы основные операции с базами данных. Подробности, а также готовый парсер - по ссылке выше.
n0hvs_180426111509.png



Если вы хотите, чтобы мы более подробно раскрыли какой-то функционал парсера, у вас есть идеи для новых статей или вы желаете поделиться собственным опытом использования A-Parser (за небольшие плюшки :) ) - отписывайтесь здесь.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники статей
 
1.2.185 - увеличение скорости в SE::Google::Modern, новые возможности Net:: DNS, множество улучшений

1.2.185.png

Улучшения
  • se-google.png
    SE::Google::Modern - многократно увеличена скорость парсинга
  • Множество улучшений в
    net-dns.png
    Net:: DNS:
    • Возможность указать несколько DNS и задать метод выбора
    • Бан нерабочих/плохих DNS по специальному эвристическому алгоритму
    • Возможность вывести в результат использованный DNS сервер при удачном запросе
  • В
    se-google.png
    SE::Google::Modern добавлена опция Use sessions
  • В
    se-yandex-wordstat.png
    SE::Yandex::WordStat добавлена настройка пресета антигейта для логина
  • Также в
    se-yandex-wordstat.png
    SE::Yandex::WordStat удалены настройки Use logins/Use sessions, теперь они включены всегда
  • Добавлена возможность автоматического удаления задания из Завершенных
  • В макросе подстановок {num} добавлена поддержка обратного отсчета
  • В JavaScript парсерах добавлена возможность сохранения произвольных данных в сессии
  • В JavaScript парсерах добавлена возможность прямого сохранения в файл
  • В API методе oneRequest/bulkRequest добавлена возможность указать configPreset
  • В связи с неактуальностью удалены парсеры SE::Google::Mobile и SE::Yandex::Catalog
Исправления в связи с изменениями в выдаче
Исправления
  • Количество неудачных больше не обнуляется при постановке на паузу
  • Исправлена проблема с подключением Node.js модулей на Linux
  • Исправлено падение парсера в редких ситуациях при использовании JS парсеров
  • Решена проблема с подключением Node.js модулей lodash, sequelize
  • Исправлена ошибка итератора при равных границах в макросе {num}
 
Разгадывание рекаптч в JS парсере

Очередное видео в цикле уроков по созданию JavaScript парсеров. Здесь показано, как реализовать разгадывание рекаптч в JS парсере.



В уроке рассмотрено:
  • Описание и настройка парсера
    util-recaptcha2.png
    Util::ReCaptcha2
  • Описание принципа работы ReCaptcha2
  • Создание кастомного JavaScript парсера с поддержкой разгадывания рекаптч

Ссылки:

Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
Добрый день,хотелось бы выразить благодарность команде a-parser за их не легкий труб и стабильный Seo комбайн,использую около года и всегда остаюсь доволен результатом,отличная тех поддержка которая не просто слушает а реально помогает.
особенно нравится изобилие персетов и уроков по их созданию.
надеюсь вы и дальше будете работать так же хорошо как и сейчас.
Кто еще не купил советую покупать, незаменимый инструмент.
 
  • Спасибо
Реакции: A-Parser Support
Сборник рецептов #23: категории сайтов, парсинг в YML и преобразование дат

23-й сборник рецептов. В нем мы будем парсить категории сайтов из Google, научимся формировать файлы YML, а также разберемся, как парсить даты и преобразовывать их в единый формат. Поехали!

Получение категорий сайтов из Google

Категоризация сайтов - довольно актуальная задача, но существует немного сервисов, которые могут ее решить. Поэтому, по ссылке выше можно взять небольшой парсер, который позволяет получать категории сайтов из Google.
tdhcp_180525110933.png


Выгрузка товаров в формате YML

YML - это стандарт, разработанный Яндексом для работы с Маркетом. По своей сути, это файлы, схожие с XML, в которых содержится информация о товарах в интернет-магазине. Данный формат обеспечивает регулярное автоматическое обновление каталога на Яндекс.Маркет и позволяет отражать все актуальные изменения (наличие, цена, появление новых товаров). Пример парсинга интернет-магазина и сохранения собранных данных в YML можно посмотреть по ссылке выше.
00xer_180528101714.png


Парсим Google новости с датой и преобразуем ее

В поисковой выдаче Google возле новостей публикуется дата. Как правило, это могут быть метки "10 ч. назад" или "26 мая 2018 г.". Иногда может возникнуть задача спарсить все даты и привести их к единому виду. Как именно это сделать, можно узнать по ссылке выше.
7adjc_180507103637.png


Кроме этого:
Еще больше различных рецептов в нашем Каталоге!

Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники рецептов:
 
1.2.216 - улучшения в SE::Google::Modern и JS парсерах, а также множество других

1.2.216.png


Улучшения
  • Зависимая задача в Цепочке заданий теперь запускается только когда файл результатов не пустой
  • Добавлен повтор без смены прокси при неудачной отправке рекаптчи в
    se-google.png
    SE::Google::Modern
  • Добавлен бан прокси при получении 403 кода ответа в
    se-google.png
    SE::Google::Modern
  • Процент неудачных запросов теперь отображается относительно числа выполненных запросов
  • Добавлена возможность вызвать URL после выполнения задания
  • Улучшен обзор каталогов при выборе файлов запросов
  • Добавлена поддержка setInterval в JavaScript парсерах
  • Уменьшено Wait between get status и улучшено логгирование в
    util-recaptcha2.png
    Util::ReCaptcha2
  • Улучшена обработка редиректов
  • Добавлена защита от бесконечного выполнения в JavaScript парсерах
  • Значительно увеличены возможности check_content в JS парсерах
  • В ответе API метода info добавлены параметры workingTasks, activeThreads, activeProxyCheckerThreads
Исправления в связи с изменениями в выдаче
Исправления
  • Исправлено ведение лога при нескольких паузах задания
  • Исправлена ошибка, из-за которой запрос считался неудачным при пустой выдаче в
    se-google.png
    SE::Google::Modern
  • Исправлена работа с url, содержащими фрагмент # в
    net-http.png
    Net::HTTP
  • Исправлен парсинг ссылок в
    html-linkextractor.png
    HTML::LinkExtractor
  • Исправлена работа опции Pages count в
    se-yandex.png
    SE::Yandex
  • Исправлен выбор файлов запросов на Windows 10
  • Исправлена ошибка, из-за которой иногда нельзя было удалить файл с запросами
  • Исправлено отображение проксичекера в конфиге потоков
  • Исправлена кодировка некоторых результатов в
    se-google-suggest.png
    SE::Google::Suggest
  • Исправлена ситуация, когда не читались настройки из config.txt
 
Пользуюсь парсером несколько месяцев, эмоции только положительные. На изучение пришлось конечно потратить время, но это того стоит. Два больших плюса по сравнению с конкурентами - это скорость работы и можно запускать win\linux
 
Сборник рецептов #24: уведомление в Telegram об экспайре доменов, чекер РКН и работа с SQLite

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

Получаем уведомления в Telegram об окончании срока регистрации доменов

Мониторинг сроков регистрации доменов - это довольно распространенная задача. A-Parser позволяет легко автоматизировать этот процесс. Более того, можно настроить получение прямо в Телеграм уведомлений о доменах, срок регистрации которых скоро закончится. Готовое решение для автоматической проверки с уведомлением - по ссылке выше.

180620_185942_00001.png


Проверка блокировки РосКомНадзора через GitHub

В А-Парсере есть стандартный парсер Check::RosKomNadzor Check::RosKomNadzor, который позволяет проверять наличие сайтов в базе РКН. Данные получаются напрямую из официального сервиса, для работы обязательно нужно подключать антигейт. Кроме того, официальный сервис РКН часто подвергается атакам, в связи с чем может быть недоступен. Но существуют альтернативные источники данных, доступность которых значительно выше и к тому же не требующие проверки в виде каптчи. Парсинг одного из таких источников и реализована в пресете по ссылке выше.

js9b9_180621103423.png


Простой парсер обменника с записью в БД SQLite

Как известно, в A-Parser реализована возможность чтения/записи данных в БД SQLite. В этом рецепте показано использование этого функционала на примере парсинга курсов валют. Готовый парсер доступен по ссылке выше.

Lati2.png


Еще больше различных рецептов в нашем Каталоге!

Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

 
Очень крутой софт, денег своих стоит однозначно т.к. в совокупности с хорошими прокси, позволяет быстро обработать гору информации. Софт маст хэв! Плюс на форуме куча готовых пресетов на все случаи жизни.
 
1.2.246 - обновление базы Rank::CMS и новые функции в парсерах Baidu и MajesticSEO

1.2.246.png

Улучшения
  • В
    rank-cms.png
    Rank::CMS обновлена база определяемых движков, теперь поддерживается одновременно старый и новый формат apps.json (при обновлении рекомендуется также обновить apps.json)
  • se-baidu.png
    SE::Baidu полностью переписан:
    • добавлен парсинг related keywords
    • убран $cachedate из $serp, т.к. его похоже больше нет в выдаче
    • добавлена опция Get full link, преобразующая обрезанные ссылки в полные
    • исправлены некоторые регулярные выражения и баг с двойным http в ссылках
  • Изменения в
    rank-majesticseo.png
    Rank::MajesticSEO:
    • Добавлен параметр Check type, позволяет выбрать тип проверки: Root Domain/Subdomin/URL
    • Убран параметр Extract domain
    • Исправлена работа в некоторых случаях
  • Улучшена отзывчивость в редакторе JavaScript парсеров
  • Улучшена работа
    html-emailextractor.png
    HTML::EmailExtractor, устранены зависания, которые возникали на определенных страницах
  • Обновлен список регионов в парсерах Яндекс
  • Пустой результат в
    se-google-trends.png
    SE::Google::Trends больше не считается неудачным запросом
  • Улучшена работа с сессиями в
    se-yandex-wordstat.png
    SE::Yandex::WordStat
Исправления в связи с изменениями в выдаче
  • Исправлен парсинг рекламы в
    se-yandex.png
    SE::Yandex
  • Исправлена работа, а также улучшен алгоритм парсинга в
    se-duckduckgo.png
    SE:: DuckDuckGo
  • Исправлено указание региона в парсерах Яндекс
  • Исправлен парсинг $ads.$i.visiblelink в
    se-google.png
    SE::Google::Modern
  • Исправлен парсинг $totalcount в
    se-yandex-direct.png
    SE::Yandex:: Direct
Исправления
  • Исправлена ошибка, из-за которой процент обработанных запросов мог быть больше 100
  • Исправлены ошибки, из-за которых парсинг мог зависать при снятии с паузы, а также сбивался перебор в макросах подстановок
  • Исправлено отображение кириллицы в $headers в
    net-http.png
    Net::HTTP
  • Исправлена ошибка в Конструкторе результатов, из-за которой в редких случаях парсер мог падать
  • Устранена проблема с кодировкой при работе с SQLite
  • Исправлена ошибка со сменой прокси в JavaScript парсерах
 
Сборник статей #4: добавление товаров в OpenCart и парсинг JSON

В 4-м сборнике статей будет рассмотрено добавление товаров в OpenCart, а также описано создание универсального парсера JSON. В каждой статье приложены готовые JS парсеры, используя которые, можно на реальных примерах изучить описанные методы и поэксперементировать с ними. Поехали!

Работаем с OpenCart. Часть 1. Вступление.

Данная статья начинает цикл об одной из наиболее часто запрашиваемых возможностей - заливке товаров в интернет-магазин. A-Parser - это универсальный инструмент, который кроме прочего может решать и такие задачи. Для тестов выбран движок OpenCart, в 1-й статье будет рассмотрена авторизация, получение списка товаров и добавление товара. Подробности, а также пример парсера - по ссылке выше.
32t3m_180712101444.png


Парсинг JSON ответов и работа с их содержимым

JSON - это довольно популярный способ предоставления данных, который, например, часто используется при работе с API различных сервисов. В А-Парсере есть встроенные инструменты для работы с ним, но не всегда их применение может быть простым, иногда требуется дополнительно писать сложные шаблоны, используя шаблонизатор. Поэтому в статье по ссылке выше будет рассказано, как написать простой универсальный парсер JSON.
a52w5_180711161912.png


Если вы хотите, чтобы мы более подробно раскрыли какой-то функционал парсера, у вас есть идеи для новых статей или вы желаете поделиться собственным опытом использования A-Parser (за небольшие плюшки :-) ) - отписывайтесь здесь.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники статей
 
Видео урок: Создание JS парсеров. Работа с SQLite
Продолжение цикла уроков по созданию JavaScript парсеров. В этом видео показано, как работать с базой данных SQLite в JS парсере.


В этом уроке рассмотрены:
  • Знакомство с языком запросов SQL
  • Создание простейшей базы данных SQLite при работе с JS-парсером
  • Получение и запись данных в базу SQLite при работе с JS-парсером
Ссылки:

Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
1.2.270 - новый парсер Rank::Curlie, множество доработок в Node.js функционале

1.2.270.png


Улучшения
  • Добавлен новый парсер
    rank-curlie.png
    Rank::Curlie
  • В
    html-linkextractor.png
    HTML::LinkExtractor улучшена обработка портов по умолчанию, теперь ссылки с портом приводятся к каноническому виду
  • Оптимизирована работа
    se-yandex-wordstat.png
    SE::Yandex::WordStat
  • Улучшена работа с сессиями в
    se-yandex.png
    SE::Yandex
  • Улучшена обработка некорректных ответов в
    se-yandex.png
    SE::Yandex
    se-google-suggest.png
    SE::Google::Suggest
Исправления в связи с изменениями в выдаче
Исправления
  • Исправлена проблема с запуском на некоторых linux дистрибутивах
  • Исправлена загрузка node.js модулей в редких случаях на Windows
  • JS парсеры: добавлена поддержка dns.lookup и улучшена совместимость с модулем mysql2
  • JS парсеры: исправлен util.promisify
  • Исправлена работа некоторых Node.js модулей
  • В
    se-google.png
    SE::Google::Modern и
    se-bing.png
    SE::Bing $totalcount при 0 результатов теперь возвращает 0
  • Исправлено логгирование в режиме foreground
 
25-й сборник рецептов
25-й сборник рецептов. В нем будет показан способ периодического парсинга с дозаписью результатов в таблицу, рассмотрен парсинг с помощью Node.js модуля Cheerio без использования регулярных выражений, а также показан парсер первой мобильной поисковой системы в Китае - Shenma. Поехали!

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


Парсер поисковой системы Haosou
Как известно, в основе почти любого парсера используются регулярные выражения, реже - XPath. Работа с этими методами требует определенных знаний, что в свою очередь может вызывать некоторые сложности. Поэтому существуют и другие методы. Использование одного из них на примере парсинга популярного в Китае поисковика Haosou, показано по ссылке выше.
r4ztg_180813111825.png


Парсер китайского поисковика Shenma
Еще один китайский поисковик в этом сборнике - Shenma. Это первая мобильная поисковая система в Китае, ориентирована в первую очередь на мобильные сайты. Пресет - по ссылке выше.
bcw8p_180813111311.png


Еще больше различных рецептов в нашем Каталоге!
Предлагайте ваши идеи для новых парсеров здесь, лучшие будут реализованы и опубликованы.

Подписывайтесь на наш канал на Youtube - там регулярно выкладываются видео с примерами использования A-Parser, а также следите за новостями в Twitter.

Предыдущие сборники рецептов:
 
Видео урок: Создание JS парсеров. Реализация подстановки запросов и их многопоточной обработки.
Продолжение цикла уроков по созданию JavaScript парсеров. В этом видео будет показано, как "на лету" добавлять запросы в задание и многопоточно их обрабатывать.
В одной из наших статей мы рассмотрели способ разработки парсера, который собирает ТОП 10 из выдачи поисковика, а затем по очереди парсит нужные данные по полученным ссылкам. Вроде все неплохо, но если у вас не 10 запросов, несколько тысяч? Задание будет выполняться очень долго, а время это самый драгоценный и не восполняемый ресурс.
К счастью в A-Parser есть такая замечательная вещь, как многоуровневый парсинг, который позволяет многократно увеличить скорость парсинга, и в этом видео мы рассмотрим как этой возможностью пользоваться.

В этом уроке рассмотрено:
  • Реализация раздельных процедур парсинга в зависимости от внешних условий, а именно - уровня парсинга
  • Подстановка запросов в задание "на лету"
  • Использование стандартных парсеров в кастомных JavaScript парсерах
Ссылки:
Оставляйте комментарии и подписывайтесь на наш канал на YouTube!
 
Господа. Сколько люди не пишут крутейший и восторженных отзывов об апарсере.. Знайте.. ЭТО ВСЕ ПРАВДА!
Я сегодня просто в шоке, планировал писать 3 разных чекера! После того, как апарсер мне гугл спарсит... А просто поговорив со специалистом тех поддержки Денисом, мы все решили и настроили этот супер-гибкий инструмент за 15 минут! И у меня одним заданием будет реализовано все что мне надо. Это ли не чудо?!
Очень доволен поддержкой инструмента, работой и кончено самим апарсером. Очень рад покупке и шикарно дополняет зеннопостер и другой софт.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)