《我用爬蟲一天時間「偷了」知乎一百萬用戶,只爲證實PHP是世界上最好的語言 》所使用的程序框架php
編寫PHP網絡爬蟲, 須要具有如下技能:git
-
爬蟲採用PHP編寫github
-
從網頁中抽取數據須要用XPath正則表達式
-
固然咱們還能夠使用CSS選擇器數組
-
不少狀況下都會用到正則表達式網絡
-
Chrome的開發者工具是神器, 不少AJAX請求須要用它來分析框架
注意:本框架只能在命令行下運行,命令行、命令行、命令行,重要的事情說三遍 ^_^
第一個demo
爬蟲採用PHP編寫, 下面以糗事百科爲例, 來看一下咱們的爬蟲長什麼樣子:dom
$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();來配置並啓動爬蟲.ide
運行界面以下:
$configs對象如何定義, 後面會做詳細介紹.^_^工具
官方下載地址:https://github.com/owner888/phpspider
官方開發手冊:https://doc.phpspider.org/