• 基于phpspider爬虫框架,抓取简书文章实例(亲测成功)


    <?php
    
    /**
     * 这个是成功的案例插入数据库
     */
    
    require_once __DIR__ . '/../autoloader.php';
    
    use phpspider\core\phpspider;
    
    /* Do NOT delete this comment */
    /* 不要删除这段注释 */ // 不清楚他这个意思,不知道为啥不能删除
    //定义一个数组
    $configs = array(
        'name' => '简书',
        'log_show' => true,
        'tasknum' => 8,
        // 数据库配置
        'db_config' => array(
            // 数据url地址
            'host' => '127.0.0.1',
            // 数据库端口
            'port' => 3306,
            // 数据库登录账号
            'user' => '***',
            // 密码
            'pass' => '**',
            // 数据库名 切记这个是数据库的名字要一致。可以随意更改,但是要和数据库的名字一致
            'name' => 'lxw_db'),
        'export' => array(
            'type' => 'db',
            'table' => 'jianshu' //添加表, jianshu ,
        ),
        'max_try' => 5,
    
    // 爬取的页面
        '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+"),
    //内容页实例
        'content_url_regexes' => array("https://www.jianshu.com/p/\d+"),
    
        'fields' => array(
            // 表结构,也就是表字段
            array(
                'name' => 'title',
                'selector' => "//h1",
                //获取所有class值为title的h1节点
                'required' => true
            ),
            array(
                'name' => 'content',
                //获取所有class值为show-content-free的div节点
                'selector' => "//article",
                'required' => true
            ),
        )
    );
    $spider = new phpspider($configs);
    $spider->start();

    s

    爬取[糗事百科]
    <?php
    /**
     *User: lxw
     *Date: 2020-12-29
     */
    require_once __DIR__ . '/../autoloader.php';
    use phpspider\core\phpspider;
    /* Do NOT delete this comment */
    /* 不要删除这段注释 */ // 不清楚他这个意思,不知道为啥不能删除
    
    $configs = array(
        'name' => '糗事百科',
        'log_show' => true,
        'tasknum' => 1,
        '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+"
    //        "http://www.qiushibaike.com/8hr/page/\d+\?s=\d+"
        ),
    
    
        'max_try' => 5,
        // 数据库配置
        'db_config' => array(
            'host' => '127.0.0.1',
            'port' => 3306,
            'user' => '**',
            'pass' => '**',
            'name' => 'lxw_db'
        ),
        'export' => array(
            'type' => 'db',
            'table' => '360ky' //添加表, jianshu ,
        ),
        'fields' => array(
            array(
                // 抽取内容页的文章内容
                'name' => "title",
                'selector' => "//h1[contains(@class,'article-title')]",
                'required' => true
            ),
            array(
                // 抽取内容页的文章作者
                'name' => "author",
                'selector' => "//span[contains(@class,'side-user-name')]",
                'required' => true
            ),
            array(
                // 抽取内容页的文章内容
                'name' => "content",
                'selector' => "//*[@id='single-next-link']",
                'required' => true
            ),
            array(
                // 抽取内容页的头像
                'name' => "headimg",
                'selector_type' => 'css',
                'selector' => ".side-left-userinfo>img",
                'required' => true
            ),
        ),
    );
    
    $spider = new phpspider($configs);
    $spider->start();

    赞赏码

    非学,无以致疑;非问,无以广识

  • 相关阅读:
    Help document of CAD Build
    NSTableView 中 NSTextField无法输入
    NSScrollView 内容显示不正常问题
    Mac 中 NSTrackingArea 鼠标移动事件捕获
    java定时任务调度框架
    uboot: initramfs image to roofs, and rootfs to initramfs image
    jfrog CLI(command line interface)
    git submodule list/clone/update
    python run javascript in ubuntu
    git blame
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15452647.html
Copyright © 2020-2023  润新知