Спарсить сайт

2 000 руб. за проект • электронные деньги
10 декабря 2018, 22:25 • 5 откликов • 145 просмотров
Мне нужно спарсить все вопросы, ответы и комментарии с brainly.pl используя код следующих репозиториев:

1. https://github.com/php-curl-class/php-curl-class/ - для асинхронных запросов к сайту.
https://github.com/00pp/MultiCurl-fix - здесь найдете фикс, который позволяет пользоваться MultiCurl с прокси и пример кода. Важно: просьба как можно полнее использовать код с example.php при выполнении задачи.

2. https://github.com/ressio/pharse - для парсинга html (если планируете использовать стороннюю библиотеку, а не родной DOMDocument)

В результате мне нужен от Вас php скрип, который запускается с ком. строки. Скрипт должен использовать MultiCurl для асинхронных запросов. Контент на страницах нужно парсить и сохранять в бд. Парсинг html желательно реализовать отдельным классом передавая результат в метод MultiCurl $multi_curl->success.

Собранный контент нужно записывать в бд. https://github.com/00pp/cms/blob/master/database_.... - здесь найдете подготовленную структуру. Просьба не удалять поля из бд. Добавлять можно.

Какой конкретно контент нужно собирать и сохранить со страниц:
- question title
- question text
- question categories (если есть)
- question comments (если есть)
- answer text (если есть)
- answer comments (если есть)

Юзернеймы нужно брать из этого списка https://github.com/00pp/usernames/blob/master/nick...

У brainly.pl есть карта сайта, которую нужно использовать в качестве источника урлов для парсинга: https://brainly.pl/sitemap.xml
Просьба предусмотреть опцию на случай преждевременного завершения сбора контента: возможность указать номер sitemap и id страницы brainly.pl для продолжения

Примеры страниц, где вы найдете вопросы с ответами и комментариями:
https://brainly.pl/zadanie/6615542
https://brainly.pl/zadanie/13734321
Комментарии к вопросу - https://brainly.pl/zadanie/14758751

Ответы могут быть "размыты", но они все равно присутствуют в html. Наличие текста также можно увидеть в кеше гугла, например cache:https://brainly.pl/zadanie/14758751

При парсинге просьба сохранять следующие теги:
<img><p><a><br><blockquote><pre><code>
остальные нужно удалять.

Оплатить могу одним из след. способов: wmz, paypal, payoneer, epayments, банк. перевод (около 3 евро комиссия)