说到做爬虫,大家都可能第一时间想到的是python,其实php也是可以用来写爬虫程序的。php一贯简洁、易用,亲测使用PHPspider框架10分钟就能写出一个简单的爬虫程序。

一、PHP环境安装

和python一样,PHP也需要环境,可以使用官网下载的PHP,也可以使用XAMPP、PHPstudy等集成环境下的PHP。比较推荐集成环境,省去单独安装Mysql数据库。

二、composer安装

composer是PHP下的依赖包管理工具,类似于Python中的PIP。

中文官网为https://www.phpcomposer.com/

下载安装即可,win+R运行cmd,输入composer命令,出现如下图所示说明安装成功了。

三、PHPspider安装

在任意位置建立一个文件夹,例如我们要抓取简书的数据,我们可以在D盘建立jianshu文件夹,然后cmd命令进入该文件夹,运行命令:composer require owner888/phpspider

如下结果便是成功安装了。

相关推荐:《php环境搭建》

四、开始写第一个爬虫

现在打开jianshu文件夹,会发现里面多了一些东西,不用管它,建立一个php文件,开始打代码。

开发文档在这:https://doc.phpspider.org/demo-start.html

这边不讲基础,直接上代码,因为咱们是做的10分钟快速教程。

匹配方式使用XPach语法。<?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();

稍微解释一下一下句法的含义://h1[@class='title']

获取所有class值为title的h1节点//div[@class='show-content-free']

获取所有class值为show-content-free的div节点

打完代码后,记得根据要抓取的内容建立对应的数据库、数据表,字段要能对对上。

接着cmd,输入:php -f d:\jianshu\spider.php

运行如下:

打开数据看一下,是不是都抓取到了呢?

php爬虫框架下载文件,php爬虫框架怎么安装相关推荐

  1. java安全框架下载文件_java安全框架之Permission学习笔记

    一.permission和security policy java.security.Permission代表一个访问系统资源的系统资源的权限,perm = new java.io.FilePermi ...

  2. python爬虫下载-python爬虫之下载文件的方式总结以及程序实例

    python爬虫之下载文件的方式以及下载实例 目录 第一种方法:urlretrieve方法下载 第二种方法:request download 第三种方法:视频文件.大型文件下载 实战演示 第一种方法: ...

  3. python 下载文件-python爬虫之下载文件的方式总结以及程序实例

    python爬虫之下载文件的方式以及下载实例 目录 第一种方法:urlretrieve方法下载 第二种方法:request download 第三种方法:视频文件.大型文件下载 实战演示 第一种方法: ...

  4. python 模拟浏览器下载文件-python爬虫:使用Selenium模拟浏览器行为

    前几天有位微信读者问我一个爬虫的问题,就是在爬去百度贴吧首页的热门动态下面的图片的时候,爬取的图片总是爬取不完整,比首页看到的少.原因他也大概分析了下,就是后面的图片是动态加载的.他的问题就是这部分动 ...

  5. python爬虫2——下载文件(中华网图片库下载)

    # -*- coding: utf-8 -*- import requests import re import sys reload(sys) sys.setdefaultencoding('utf ...

  6. python爬虫视频 下载 黑马_Python爬虫能爬视频么(python爬虫零基础视频教程)

    Python爬虫能爬视频么 他视频没有的,但是跑了之后你要处理这个视频,就是问题的?你只需要,得到视频的播放地址,还是要把视频完整的下载到本地的.如果只是爬那个视频的下载地址,很简单,如果要下载的话, ...

  7. python网站框架下载_Python搭建网站框架

    1. 机器上安装python 在python官网下载python的2.7版本,然后一路next就可以安装了: 安装结束后,开启菜单会有python客户端,但是一般使用cmd命令行模式进行运行: 添加p ...

  8. css 查看更多_Cirrus(原型制作CSS框架)下载-Cirrus(原型制作CSS框架)v0.6.0免费版下载...

    Cirrus 基于CSS所制作,适用于开发人员,能够帮助用户用更好的方式来完成在底层上面的开发,弥补了前端人员在开发的过程当中不能够进行自定义的缺陷,提供更多的样式来帮助用户进行内容上面的开发,让用户 ...

  9. python爬虫快速下载图片_Python爬虫入门:批量爬取网上图片的两种简单实现方式——基于urllib与requests...

    Python到底多强大,绝对超乎菜鸟们(当然也包括我了)的想象.近期我接触到了爬虫,被小小地震撼一下.总体的感觉就两个词--"强大"和"有趣".今天就跟大家分享 ...

  10. 爬虫python下载电影_python爬虫:抓取下载电影文件,合并ts文件为完整视频

    目标网站:https://www.88ys.cc/vod-play-id-58547-src-1-num-1.html 反贪风暴4 对电影进行分析 我们发现,电影是按片段一点点加载出来的,我们分别抓取 ...

最新文章

  1. 16岁应该遵循什么_16岁就被张艺谋选中,刘浩存到底有什么来头?
  2. java spark persist,hadoop – 我的sparkDF.persist(DISK_ONLY)数据存储在哪里?
  3. 泛型委托在项目中的应用
  4. with error 126:找不到指定的模块
  5. SRS的2021,盐碱地里种西瓜的王婆
  6. 计算机软件及应用stata,蒙特卡洛模拟及其Stata应用实现
  7. mysql的考试范围_数据库考试范围整理
  8. sharepoint小 tip
  9. MySQL(15)-----运算符和优先级查询结果拼接处理及CONCAT()、CONCAT_WAS()和GROUP_CONCAT()函数的使用
  10. 如何下载ei和sci论文
  11. 主页被修改成httpwww.yy4000.cn等类似首页,无法更改,怎么办?
  12. 【项目排期】测试排期问题思考
  13. 阿里P9李运华:架构到底是指什么?
  14. 顺序表的具体使用方法.数据解构(二)
  15. umi+dva dva全局的dispatch方法
  16. SCI审稿流程(转)
  17. 2021年山东省安全员C证考试及山东省安全员C证找解析
  18. serviceaccounts is forbidden: User “system:serviceaccount:kubernetes-dashboard:kubernetes-dashboard“
  19. 英国富时100指数_在英国创业或从事第一份自由职业时应了解的财务事项
  20. 如夢令-常記溪亭日暮

热门文章

  1. DPDK Release 20.11
  2. <永洪BI>慢查询记录
  3. 连接linux工具Mtr,Mac、linux和windows mtr路径探测工具安装使用
  4. android slidemenu 折叠效果,左侧菜单栏折叠展开效果-超级简单
  5. ASP.NET AJAX学习笔记之:CollapsiblePanel---可折叠的面板
  6. 用vba加载宏求地图分幅
  7. 自动驾驶硬件系统架构概述
  8. WMS系统仓库条码管理流程解析
  9. 随机森林python反欺诈_携程金融自动化迭代反欺诈模型体系
  10. MATLAB从入门到精通 第1章 MATLAB入门