«Я использовал сканер, чтобы «украсть» один миллион пользователей Zhihu за один день, просто чтобы доказать, что PHP — лучший язык в мире»
phpspider — это среда разработки сканеров. Используя эту структуру, вам не нужно понимать базовую технологическую реализацию сканера. Сканер блокируется веб-сайтом, а для сканирования некоторых веб-сайтов требуется распознавание входа в систему или проверочного кода. Всего с помощью нескольких строк кода PHP вы можете создать свой собственный сканер. Используя многопроцессную библиотеку классов Worker, инкапсулированную в инфраструктуру, код становится проще, а эффективность выполнения выше и быстрее.
В демонстрационном каталоге существуют некоторые правила сканирования для конкретных веб-сайтов. Если у вас установлена среда PHP, код можно запускать непосредственно из командной строки. Разработчики, интересующиеся сканерами, могут присоединиться к группе QQ для обсуждения: 147824717.
Давайте возьмем «Энциклопедию неловких историй» в качестве примера и посмотрим, как выглядит наш сканер:
$configs = array( 'name' => '糗事百科', 'domains' => array( 'qiushibaike.com', 'www.qiushibaike.com' ), 'scan_urls' => array( 'http://www.qiushibaike.com/' ), 'content_url_regexes' => array( "http://www.qiushibaike.com/article/d+" ), 'list_url_regexes' => array( "http://www.qiushibaike.com/8hr/page/d+?s=d+" ), 'fields' => array( array( // 抽取内容页的文章内容 'name' => "article_content", 'selector' => "//*[@id='single-next-link']", 'required' => true ), array( // 抽取内容页的文章作者 'name' => "article_author", 'selector' => "//div[contains(@class,'author')]//h2", 'required' => true ), ), ); $spider = new phpspider($configs); $spider->start();
Общая структура сканера выглядит следующим образом. Сначала определяется массив $configs, который задает некоторую информацию о сканируемом веб-сайте. Затем он настраивается и настраивается с помощью вызова $spider = new phpspider($configs);
$spider->start();
Запустите сканер.
Для получения более подробной информации перейдите по ссылке:
Разработочная документация