PHP蜘蛛爬虫开发文档《我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言》所使用的程序框架编写PHP网络爬虫,需要具备以下技能:爬虫采用PHP编写从网页中抽取数据需要用XPath当然我们还可以使用CSS选择器很多情况下都会用到正则表达式Chrome的开发者工具是神器,很多AJAX请求需要用它来分析注意:本框架只能在命令行下运行,命令行、命令行、命令行,重要的事情说三遍^_^

PHP蜘蛛爬虫开发文档

《我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言 》所使用的程序框架

编写PHP网络爬虫, 需要具备以下技能:

  • 爬虫采用PHP编写

  • 从网页中抽取数据需要用XPath

  • 当然我们还可以使用CSS选择器

  • 很多情况下都会用到正则表达式

  • Chrome的开发者工具是神器, 很多AJAX请求需要用它来分析

注意:本框架只能在命令行下运行,命令行、命令行、命令行,重要的事情说三遍 ^_^

第一个demo

爬虫采用PHP编写, 下面以糗事百科为例, 来看一下我们的爬虫长什么样子:

$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();来配置并启动爬虫.