前几天,被老板拉去说要我去抓取大众点评某家店的数据,当然被我义正言辞的拒绝了,理由是我不会。。。但我的反抗并没有什么卵用,所以还是乖乖去查资料,因为我是从事php工作的,首先找的就是php的网络爬虫源码,在我的不懈努力下,终于找到phpspider,打开phpspider开发文档首页我就被震惊了,标题《我用爬虫一天时间“偷了”知乎一百万用户,只为证明PHP是世界上最好的语言 》,果然和我预料的一样,php就是世界上最好的语言。废话少说,下面开始学习使用。

首先看的是提供的一个demo,代码如下:

$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();

每项具体的信息,可以去 https://doc.phpspider.org/demo-start.html 查看,哪里比较详细,这里只说下我走的弯路,

domains是定义采集的域名,只在该域名下采集,
content_url_regexes是采集的内容页,使用chrome查看网页源码,然后使用selector选择器定位,selector使用xpath格式定位参数,当然也可以用css来选择。
list_url_regexes列表页,每个列表页抓取多条content_url_regexes的url循环采集。还有一些其他参数没有列出来,例如:
 'max_try' => 5,'export' => array('type' => 'db', 'conf' => array('host'  => 'localhost','port'  => 3306,'user'  => 'root','pass'  => 'root','name'  => 'demo',),'table' => '360ky', ),

max_try 同时工作的爬虫任务数。
export采集数据存储,有两种格式,一种是写到数据库中,一种是直接生成.csv格式文件。只要url规则写的对,就可以运行,不用管框架里面的封装。当然,此框架只能在php-cli命令行下运行,所以使用前要先配置环境变量,或者cd到php安装路径运行。最后成功采集到大众点评某点的一千多条数据。

转载于:https://www.cnblogs.com/lxwphp/p/10172110.html

关于php网络爬虫phpspider相关推荐

  1. python网络爬虫初识_python爬虫(一)初识爬虫

    什么是爬虫? 中文名(网络爬虫) 外文名(web crawler) 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程 ...

  2. 【网络爬虫】(1) 网络请求,urllib库介绍

    各位同学好,今天开始和各位分享一下python网络爬虫技巧,从基本的函数开始,到项目实战.那我们开始吧. 1. 基本概念 这里简单介绍一下后续学习中需要掌握的概念. (1)http 和 https 协 ...

  3. Python网络爬虫--urllib

    本篇随便记录学习崔庆才老师编著的<Python3 网络爬虫开发实战>以及urllib标准库使用 urllib库是Python内置的HTTP请求库,包含四个模块: request:最基本的H ...

  4. python网络爬虫程序技术,Python网络爬虫程序技术

    spContent=该课程是2018年广东省精品在线开放课程.课程主要以爬取学生信息.爬取城市天气预报.爬取网站图像.爬起图书网站图书.爬取商城网站商品等5个项目为依托,讲解Web.正则表达式.Bea ...

  5. python之网络爬虫

    一.演绎自已的北爱 踏上北漂的航班,开始演奏了我自已的北京爱情故事 二.爬虫1 1.网络爬虫的思路 首先:指定一个url,然后打开这个url地址,读其中的内容. 其次:从读取的内容中过滤关键字:这一步 ...

  6. 精通Python网络爬虫:核心技术、框架与项目实战.1.1 初识网络爬虫

    摘要 网络爬虫也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理.在大数据时代,信息的采集是一项重要的工作,如果单纯靠人力进行信息采集,不仅低效繁琐,搜集的成本也会提高.此时,我们 ...

  7. 20161124网络爬虫技术学习

    参考书籍:<自己动手写网络爬虫> 网络爬虫的基本操作是抓取网页. "打开"网页的过程其实就是浏览器作为一个浏览的"客户端",向服务器端发送了一次请穷 ...

  8. 目前网络上开源的网络爬虫以及一些简介和比较

    2019独角兽企业重金招聘Python工程师标准>>> 目前网络上开源的网络爬虫以及一些简介和比较 目前网络上有不少开源的网络爬虫可供我们使用,爬虫里面做的最好的肯定是google ...

  9. 爬虫书籍-Python网络爬虫权威指南OCR库 NLTK 数据清洗 BeautifulSoup Lambda表达式 Scrapy 马尔可夫模型

    Python网络爬虫权威指南 编辑推荐 适读人群 :需要抓取Web 数据的相关软件开发人员和研究人员 作为一种采集和理解网络上海量信息的方式,网页抓取技术变得越来越重要.而编写简单的自动化程序(网络爬 ...

  10. 计算机书籍- 网络爬虫开发实战

    书名: Python 3网络爬虫开发实战 作者:崔庆才 出版社:人民邮电出版社 出版时间:2018年04月 鼠标

最新文章

  1. 遍历Stream并设置属性值
  2. 综述 | 语言分析技术在社会计算中的应用
  3. C语言 计算2-4+6-8+.....+98-100的结果
  4. java Web发布的两种方式
  5. 基于VTK的MFC应用程序开发(1)
  6. JUnit+EclEmma进行覆盖测试
  7. php 启动手机浏览器,php实现读取手机客户端浏览器的类
  8. 安全警报 该站点安全证书_深度学习如何通过实时犯罪警报确保您的安全
  9. erlang mysql连接超时_Erlang数据库-(一)Erlang与Mysql的连接
  10. leetcode957. Prison Cells After N Days
  11. CUDA精进之路(一):图像处理——大图像分块处理(包括求均值、最大值)
  12. 《实施Cisco统一通信管理器(CIPT1)》一2.2 CUCM:单站点部署模型
  13. 20200203_selenium爬取百度新闻
  14. .NET/CLI元数据中使用的压缩整数
  15. 配置ssh免密码登录
  16. sql根据经纬度计算距离
  17. Error:(list) object cannot be coerced to type 'double'的处理
  18. 沃尔玛经典营销案例:啤酒与尿布
  19. 使用亚马逊云快速托管静态网站
  20. 电脑开机黑屏---只有一个鼠标箭头处理办法

热门文章

  1. vc 控制台添加托盘显示_本教程将教会你如何让控制台程序拥有托盘图标
  2. teraterm 执行sql_teraterm自动或定时执行远程命令
  3. 2020中兴捧月傅里叶派记录
  4. 中国邮递员问题的深入剖析与算法实现(附例题及MATLAB、LINGO代码)
  5. ISO 27002【实践指南】 -2022新标准
  6. 为心爱的人做一个超具创意的表白网页吧❤(告白气球)HTML+CSS+JavaScript
  7. 分享几款强大的录音软件,厉害炸了!
  8. pyecharts中文手册
  9. 计算机笔记--【JVM】
  10. mapgis k9将wp、wl、wt转shp属性字段名乱码