前言

虽然python爬虫方便,但是php在这方面也不弱,谁让php是世界上最好的语言!这里推荐一款php的爬虫框架phpspider。不建议自己写爬虫,因为效率太低。使用框架爬虫真的要高效许多

官方文档:

https://doc.phpspider.org/

1、下载

官方github下载地址:

https://github.com/owner888/phpspider

下载地址可能无法访问,这里提供一个网盘下载地址:

https://pan.baidu.com/s/10n9ZOUQBlrJzOQx0ShOmMQ 

提取码:b2zc 

2、文件结构

下载解压后,phpspider的文件结构如图所示:

其中demo文件夹放的是phpspider的一些案例,如图所示:

3、创建爬虫并且运行

在demo文件夹下创建爬虫文件。需要注意的是,phpspider有两种运行爬虫文件的方式,一种是在命令行下运行;另外一种是可视化操作(在浏览器下运行)

3.1 在命令行下运行爬虫文件

要爬取的对象链接:

https://www.douban.com/photos/album/1616649448/

要爬取的内容如图所示:

爬取id为wrapper的div所包含的内容

3.1.1 在demo文件夹下新建文件spider.php,代码如下:

<?php

require_once__DIR__.'/../autoloader.php';

usephpspider\core\phpspider;

/* Do NOT delete this comment */

/* 不要删除这段注释 */

$configs =array(

'name'=>'豆瓣',//定义当前爬虫名称

'log_show'=>true,//显示日志调试信息

'input_encoding'=>'UTF-8',//输入编码

//定义爬虫爬取哪些域名下的网页, 非域名下的url会被忽略以提高爬取速度

'domains'=>array(

'www.douban.com'

),

//定义爬虫的入口链接, 爬虫从这些链接开始爬取,同时这些链接也是监控爬虫所要监控的链接

'scan_urls'=>array(

'https://www.douban.com/photos/album/1616649448/'

),

//爬虫爬取数据导出

'export'=>array(

'type'=>'csv',//type:导出类型 csv、sql、db

'file'=>'../data/abc.csv',//file:导出 csv、sql 文件地址,如果不存在文件自动创建

),

//定义内容页的抽取规则

'fields'=>array(

array(

'name'=>"wrapper",

'selector'=>"//div[@id='wrapper']",

)

)

);

$spider =newphpspider($configs);

$spider->start();

3.1.2 在demo文件夹中直接打开cmd命令面板,输入命令行 php -f spider.php 回车,代码跑起来,如图所示:

3.1.3 查看爬取下来的数据

在phpspider文件结构中找到data文件夹下的abc.csv文件,打开文件可看到爬取下来的数据,如图所示:

3.2 可视化操作(在浏览器下运行爬虫文件)

要爬取的对象链接:

https://movie.douban.com/subject/26588308/?from=showing

要爬取的内容如图所示:

爬取class为nav-items的div所包含的内容

3.2.1 在demo文件夹下新建另外一个文件test.php,代码如下:

<?php

header("Content-Type: text/html;charset=utf-8");

date_default_timezone_set("Asia/Shanghai");

ini_set("memory_limit","10240M");

require_once__DIR__.'/../autoloader.php';

usephpspider\core\phpspider;

usephpspider\core\requests;

usephpspider\core\selector;

/* Do NOT delete this comment */

/* 不要删除这段注释 */

$html = requests::get('https://movie.douban.com/subject/26588308/?from=showing');

$data = selector::select($html,"//div[@class='nav-items']");

echo$data;

3.2.2 打开浏览器输入文件地址

结语

以上只是简单的爬虫例子,还可以进行多进程爬取,代理爬虫,很多好玩的,更多操作参考官方文档

https://doc.phpspider.org/

php爬虫入门之phpspider框架相关推荐

  1. python爬虫入门(六) Scrapy框架之原理介绍

    Scrapy框架 Scrapy简介 Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬 ...

  2. java启动scrapy爬虫,爬虫入门之Scrapy 框架基础功能(九)详解

    Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非 ...

  3. 爬虫入门3---爬虫实战

    爬虫入门1---谈谈网络爬虫 爬虫入门2---爬虫框架webmagic 爬虫入门3---爬虫实战 3 爬虫实战       3.1 需求         每日某时间段从****博客中爬取文档,存入文章 ...

  4. Python爬虫入门——3.7 Scrapy爬虫框架安装

    声明:参考资料<从零开始学Python网络爬虫 >作者:罗攀,蒋仟    机械工业出版社    ISBN: 9787111579991 参考资料<精通Python网络爬虫:核心技术. ...

  5. python爬虫如何从一个页面进入另一个页面-爬虫入门(一)——如何打开一个网页...

    做了一段时间自然语言处理的项目,体会到了爬虫的乐趣,甚至一度产生了学好爬虫真的可以为所欲为的美妙错觉.因此决定开个坑,记录自己的爬虫学习过程,也督促自己学习更高深的爬虫姿势.目前我只用到了最基础的爬虫 ...

  6. python3爬虫入门教程-总算懂得python3.4爬虫入门教程

    Python是一款功能强大的脚本语言,具有丰富和强大的库,重要的是,它还具有很强的可读性,易用易学,非常适合编程初学者入门.以下是小编为你整理的python3.4爬虫入门教程 环境配置:下载Pytho ...

  7. python爬虫入门代码-Python爬虫入门(一) 网络爬虫之规则

    Python爬虫入门(一) 总述 本来早就想学习下python爬虫了,总是找各种借口,一直拖到现在才开始系统的学习. 我用的教程是中国大学MOOC上的由北京理工大学开设的Python网络爬虫与信息提取 ...

  8. python网络爬虫的基本步骤-python爬虫入门需要哪些基础/python 网络爬虫教程

    如何入门 Python 爬虫 入门个吊,放弃 python爬虫入门需要哪些基础 现在之所以有多的小伙伴热衷于爬虫技术,无外乎是因为爬我们做很多事情,比如搜索引擎.采集数据.广告过滤等,以Python为 ...

  9. 一看就明白的爬虫入门讲解:基础理论篇

    一看就明白的爬虫入门讲解:基础理论篇 发表于2015-11-13 18:50| 5909次阅读| 来源CSDN| 37 条评论| 作者孔淼 爬虫经验分享HTMLCSSAjaxApp网络 width=& ...

  10. python爬虫挖掘平台搭建_一篇非常棒的安装Python及爬虫入门博文!

    原标题:一篇非常棒的安装Python及爬虫入门博文! 一. 大数据及数据挖掘基础(私信小编007即可获取大量Python学习资料!) 第一部分主要简单介绍三个问题: 1.什么是大数据? 2.什么是数据 ...

最新文章

  1. bilareralFilter双边滤波函数
  2. Python 计算机视觉(三)—— 数字图像处理基本操作
  3. Layui表格之多列合并展示
  4. Codeforces Round #635 (Div. 1) C. Kaavi and Magic Spell 区间dp
  5. Linux 命令之 pwck -- 用来验证系统认证文件内容和格式的完整性
  6. Android开发笔记(一百五十七)使用OpenGL实现翻书动画
  7. zynq文档学习之GPIO寄存器基本操作
  8. 关于C#中枚举与字符串与数字之间的转换
  9. 2016-05-06
  10. VHDL实验-实现一位全加器
  11. 基于PHP图书馆图书借阅管理系统
  12. android支持wifi11ad,WiFi“千兆”必杀,802.11ax/802.11ad标准探秘
  13. CTF-实验吧-图片里的动漫
  14. python键盘控制_python如何直接控制鼠标键盘
  15. echarts做中国地图分布
  16. 人力外派和猎头的区别是什么?哪个行业更赚钱?
  17. python数据写入csv、csv转excel、用Pandas把数据写入excel简单总结
  18. 深入CSS vertical-align属性
  19. 《3D数学基础:图形与游戏开发》 学习笔记(一)
  20. 使用capl和uds进行.bin文件的刷写

热门文章

  1. ipadmini1从9.3.5降级8.4.1最有效的方法
  2. 饥荒海难创建显示专用服务器,饥荒联机版服务器移除实体指令分享
  3. 实现简易网易云音乐播放器
  4. Vercel部署网易云音乐api
  5. 高通平台,MSM8937/MSM8953 RF配置流程
  6. 项目: 生命游戏(C语言)
  7. Illustrator CC从入门到精通 精装版-李发展-专题视频课程
  8. 沧小海基于xilinx srio核的学习笔记之第三章 xilinx srio核介绍(三)核配置
  9. sql 循环语句几种方式
  10. dbv连oracle,oracle工具:DBV的用法