Архив метки: multi-curl

Многопоточный сбор данных с использованием цепочек связанных cURL-запросов. Часть 2

Первую часть статьи читайте здесь.

До сих пор мы еще никак не касались вопросов обработки cookies и использования прокси в условиях многопоточности запросов. Пора исправить эту оплошность и уделить внимание этим вопросам, имеющим большое практическое значение при разработке парсеров.
Читать далее

Многопоточный сбор данных с использованием цепочек связанных cURL-запросов. Часть 1

Библиотека cURL — лучший друг разработчика парсеров, ботов и прочих средств онлайн-автоматизации. Она позволяет сделать многие сложные вещи простым и универсальным способом (достаточно лишь правильно настроить опции cURL). Но все оборачивается по-другому, когда дело доходит до многопоточности, то бишь параллельности выполнения запросов. Эта довольно «скользкая» тема почему-то у многих вызывает большие сложности с пониманием. Во всяком случае именно так было со мной, когда я впервые столкнулся с необходимостью распараллеливания запросов. Мое первое знакомство с multi-curl было весьма непродолжительным, сколь и печальным. Короче говоря, официальный мануал по мультикурлу в PHP я попросту не осилил.

…Но мир не без добрых людей. Оказалось, что существует множество оберток мультикурла, позволяющих пользоваться всеми его преимуществами, не вникая при этом в суть его магии. Одна из самых популярных таких оберток — PHP-класс Rolling Curl. Имея под капотом наиболее эффективную реализацию мультикурла, Rolling Curl предоставляет простой и удобный интерфейс для параллельного выполнения множественных HTTP запросов. С помощью этого класса я смог сразу же и без особых проблем применить многопоточность на практике, чему был несказанно рад. С тех пор я стал большим его поклонником… Собственно на этом можно было бы и закончить эту статью, а то и вовсе и не начинать, если бы… опять не одно «но».
Читать далее