PHPspider爬虫10分钟快速教程

2019 年 3 月 19 日 安全优佳
点击上方 “安全优佳” 可以订阅哦!

说到做爬虫,大家都可能第一时间想到的是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

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

四、开始写第一个爬虫

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

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

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

匹配方式使用XPach语法。

<?php
require '/vendor/autoload.php';
use phpspidercorephpspider;
/* 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节点

具体为什么这么写呢?自己看简书的html源码吧。

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

接着cmd,输入

php -f d:jianshuspider.php

运行如下

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

安全优佳

http://news.secwk.com

长按识别左侧二维码,关注我们

登录查看更多
0

相关内容

PHP 是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入 HTML 文档的脚本语言,语言的风格有类似于 C 语言,被广泛的运用。PHP 具有非常强大的功能,所有的 CGI 的功能 PHP 都能实现,而且支持几乎所有流行的数据库以及操作系统。
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
190+阅读 · 2020年6月29日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
简明扼要!Python教程手册,206页pdf
专知会员服务
46+阅读 · 2020年3月24日
【资源】100+本免费数据科学书
专知会员服务
105+阅读 · 2020年3月17日
深度强化学习策略梯度教程,53页ppt
专知会员服务
176+阅读 · 2020年2月1日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
94+阅读 · 2019年12月4日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
90+阅读 · 2019年10月10日
用 Python 开发 Excel 宏脚本的神器
私募工场
26+阅读 · 2019年9月8日
C# 10分钟完成百度人脸识别
DotNet
3+阅读 · 2019年2月17日
抖音爬虫
专知
3+阅读 · 2019年2月11日
我是一个爬虫
码农翻身
12+阅读 · 2018年6月4日
PyTorch:60分钟入门学习
全球人工智能
13+阅读 · 2018年5月18日
干货 | Python 爬虫的工具列表大全
机器学习算法与Python学习
10+阅读 · 2018年4月13日
Python 爬虫实践:《战狼2》豆瓣影评分析
数据库开发
5+阅读 · 2018年3月19日
Python NLP入门教程
Python开发者
8+阅读 · 2017年11月19日
Python NLP 入门教程
大数据技术
19+阅读 · 2017年10月24日
Python3爬虫之入门和正则表达式
全球人工智能
7+阅读 · 2017年10月9日
Arxiv
20+阅读 · 2020年6月8日
Arxiv
14+阅读 · 2020年2月6日
Continual Unsupervised Representation Learning
Arxiv
7+阅读 · 2019年10月31日
Meta-Learning to Cluster
Arxiv
17+阅读 · 2019年10月30日
Few-shot Learning: A Survey
Arxiv
362+阅读 · 2019年4月10日
Arxiv
4+阅读 · 2019年4月3日
VIP会员
相关VIP内容
【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
190+阅读 · 2020年6月29日
一份简明有趣的Python学习教程,42页pdf
专知会员服务
76+阅读 · 2020年6月22日
【实用书】Python爬虫Web抓取数据,第二版,306页pdf
专知会员服务
115+阅读 · 2020年5月10日
简明扼要!Python教程手册,206页pdf
专知会员服务
46+阅读 · 2020年3月24日
【资源】100+本免费数据科学书
专知会员服务
105+阅读 · 2020年3月17日
深度强化学习策略梯度教程,53页ppt
专知会员服务
176+阅读 · 2020年2月1日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
94+阅读 · 2019年12月4日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
90+阅读 · 2019年10月10日
相关资讯
用 Python 开发 Excel 宏脚本的神器
私募工场
26+阅读 · 2019年9月8日
C# 10分钟完成百度人脸识别
DotNet
3+阅读 · 2019年2月17日
抖音爬虫
专知
3+阅读 · 2019年2月11日
我是一个爬虫
码农翻身
12+阅读 · 2018年6月4日
PyTorch:60分钟入门学习
全球人工智能
13+阅读 · 2018年5月18日
干货 | Python 爬虫的工具列表大全
机器学习算法与Python学习
10+阅读 · 2018年4月13日
Python 爬虫实践:《战狼2》豆瓣影评分析
数据库开发
5+阅读 · 2018年3月19日
Python NLP入门教程
Python开发者
8+阅读 · 2017年11月19日
Python NLP 入门教程
大数据技术
19+阅读 · 2017年10月24日
Python3爬虫之入门和正则表达式
全球人工智能
7+阅读 · 2017年10月9日
相关论文
Top
微信扫码咨询专知VIP会员