alex_kr Александр Кравцов [alex_kr]
Предыдущая работа

Многопоточный парсер на C++

  
Просмотров: 19
Дата добавления: 09.05.18 в 09:19
Разработчик, который писал оригинальный код, сделал довольно просто. Он встроил парсер прямо в WordPress-плагин и поиск выполнялся в реальном режиме времени, во время обработки запроса Web-сервером Apache. Для отправки формы методом POST и работы с cookies использовалась библиотека CURL. Результаты поиска парсер выдавал frontend-приложению через AJAX-запрос.

Это решение работало хорошо в том случае, когда критерии поиска были чёткими и в результате выдавался единственный объект. Однако, при нечётких критериях поиска, в результате могло быть получено 300 и более объектов. При этом сайт-донор разбивал результат поисковой выдачи на страницы по 20 объектов на каждой странице. Требовалось обработать десятки страниц. Страницы обрабатывались в цикле, чтобы получить результаты с каждой страницы требовалось выполнить отдельный HTTP-запрос. Это всё, конечно, работало, проблема была в том, что пользователь, как правило, покидал наш ресурс не дождавшись результата... Читать далее: alex-kravtsov.blogspot.ru...

Теги: ajax, c++, curl, gumbo, gumbo_libxml, libxml2, linux, multithreading, mutex, php, plugin, webscraping, websocket, wordpress, xpath
Следующая работа
Поделиться: