Wenn es darum geht, einen Crawler zu erstellen, denkt jeder vielleicht zuerst an Python. Tatsächlich kann PHP auch zum Schreiben von Crawler-Programmen verwendet werden. PHP war schon immer einfach und benutzerfreundlich. Ich habe persönlich getestet, dass ich mit dem PHPspider-Framework einen einfachen Crawler schreiben kann.
Die Matching-Methode verwendet XPach-Syntax. (Empfohlenes Lernen: PHP-Video-Tutorial)
<?php require '/vendor/autoload.php'; use phpspider\core\phpspider; /* Do NOT delete this comment */ /* 不要删除这段注释 */ $configs = array( 'name' => '简书', 'log_show' =>false, 'tasknum' => 1, //数据库配置 'db_config' => array( 'host' => '127.0.0.1', 'port' => 3306, 'user' => 'root', 'pass' => '', 'name' => 'demo', ), 'export' => array( 'type' => 'db', 'table' => 'jianshu', // 如果数据表没有数据新增请检查表结构和字段名是否匹配 ), //爬取的域名列表 'domains' => array( 'jianshu', 'www.jianshu.com' ), //抓取的起点 'scan_urls' => array( 'https://www.jianshu.com/c/V2CqjW?utm_medium=index-collections&utm_source=desktop' ), //列表页实例 'list_url_regexes' => array( "https://www.jianshu.com/c/\d+" ), //内容页实例 // \d+ 指的是变量 'content_url_regexes' => array( "https://www.jianshu.com/p/\d+", ), 'max_try' => 5, 'fields' => array( array( 'name' => "title", 'selector' => "//h1[@class='title']", 'required' => true, ), array( 'name' => "content", 'selector' => "//div[@class='show-content-free']", 'required' => true, ), ), ); $spider = new phpspider($configs); $spider->start();
Denken Sie nach Abschluss des Codes daran, die entsprechende Datenbank und Datentabelle entsprechend dem zu erfassenden Inhalt und den Feldern zu erstellen ausgerichtet sein.
Geben Sie dann cmd ein, geben Sie
php -f d:\jianshu\spider.php
ein und führen Sie Folgendes aus:
Das obige ist der detaillierte Inhalt vonSo führen Sie den PHP-Crawler aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!