php spider 参数详解,利用phpspider爬取网站数据

news/2024/5/20 14:52:11/文章来源:https://blog.csdn.net/weixin_39952937/article/details/115240877

在我们的工作中可能会涉及到要到其它网站去进行数据爬取的情况,我们这里使用phpspider这个插件来进行功能实现。

1、首先,我们需要php环境,这点不用说。

2、安装composer,这个网上教程很多,这里不多做赘述,一面显得篇幅太长。

3、利用composer进行phpspider安装。

在安装的过程中,我们可能会遇到composer require长时间没反应的情况,这样的话。我们就需要换到中国镜像。方法如下:

镜像配置好后,我们就进行phpspider的安装了。

新建一个文件夹,这里暂时取名为composerInstallDemo。

打开文件夹,并在文件夹地址栏中输入“cmd”直接进入该文件夹的cmd模式。

74410e9238d7b6e1bd6eda980ce0b323.png

28617d9e01432ba384f210be796f4b14.png

再在dos窗口中输入一下命令:

composer require owner888/phpspider

出现一下界面,则证明,phpspider已经安装成功。

7478ad5635654ea07e108d6c7a7b6d70.png

4、编写自己的第一个爬虫程序。

打开composerInstallDemo文件夹,在文件夹下新建一个php文件(名字随意,这里我创建的是index.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节点

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

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

fbb5ddbe09aab8df23f96af2f53af0c4.png

5、万事俱备,只欠东风。

接着cmd,输入php -f C:\Users\0923\Desktop\composerInstallDemo\index.php

运行如下

5072c8a6b4777220ba4c94720940067f.png

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

6c1f04904ca33a7e61719c9129c7b494.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_794979.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hexo搭建个人博客网站

文章目录0.首先介绍一下hexo是怎么搭建的博客?一、搭建但是我在这里遇到了两个问题1.命令行报错:YAMLException: can not read a block mapping entry; a multiline key may not be an implicit key at line 10, column 7:2.登陆博客之后中文乱码二、修改主题以 hexo-theme-ne…

计算机大赛网站设计,【计算机设计大赛】网站设计类决赛圆满落幕

原标题:【计算机设计大赛】网站设计类决赛圆满落幕【计算机设计大赛】网站设计类决赛圆满落幕为引导学生正确使用和认识网络,提高我院学生的网页设计和制作水平,12月12日晚19点我院在学校c103b教室举行了以川藏旅游为主题的网站设计比赛的决赛…

将 Hexo 静态博客网站部署到阿里云服务器

本文建立在 Hexo搭建个人博客网站 基础之上。 本来是不打算将博客部署到阿里云服务器的,之前只是用服务器备案了域名然后转而投奔鹅厂的存储桶,然后用的挺爽的时候收到了一封邮件: 。。。。 好吧,我部署。 一、域名解析 (可跳过…

使用 Django + Vue.js 开发个人博客网站(完整版附源码)—— Python-课程设计-期末项目

页面展示: 源码 首页 不同板块 注册页面 登录页面 个人信息 写文章页面 文章详情页面 文章评论 本文主要讲解 Python 后端部分,由于仅仅用到了 vue 作为 js 框架并非前后端分离项目,故前端不单独介绍。 一、项目内容(做…

系统检测到您正在使用网页抓取工具访问_SEO优化:搜索引擎蜘蛛抓取异常,原来是这个原因!...

有一些网页内容优质,用户也可以正常访问,但是搜索引擎蜘蛛却无法正常访问并抓取,造成搜索结果覆盖率缺失,对搜索引擎对站点都是一种损失,百度把这种情况叫“抓取异常”。对于大量内容无法正常抓取的网站,百…

python爬取一条新闻内容_Python爬取网站新闻

准备### 本实例使用辅助工具Fiddler抓取网页数据和使用文档查看工具sublime正则过滤(也可使用其它文档编辑工具),python开发工具使用Pycharm编辑 我们选取搜狐网的新闻页面进行爬取,对搜狐新闻以列表的形式显示出来。首先我们打开…

windows论坛_《鸡站群组》-教你建站(1.1) 下载并配置windows宝塔面板

(Linux请自己参考官网教程哈)欢迎访问 鸡站论坛各位站长们好呀 欢迎来到由鸡站群组独家呈现的建站教程 本教程会围绕各大站长的需求 以各种建站源码的使用以主要内容进行教学“工欲善其事,必先利其器” 作为一位站长 我们需要建站环境对网站进…

htm怎么让图片和搜索框在同一行_【浙江四为网络】单页网站如何优化搜索引擎优化?...

【浙江四为网络】相信网站管理员会看到一个单一页面的网站,网站排名也很好。他们是怎么做到的?他们一定很好奇。事实上,单页网站比多页网站难得多。页面太固定,太简单。没有锚链接,没有内部链。所以你可以想象出难度因…

个人主页代码html_网站搭建 | 半小时内搭建GitHub Pages个人主页!

想拥有一个免费的个人主页吗?在这里,你可以发布自己的博客、自由定制网站的主题,你可以拥有极好的创作体验,它可以成为你对外的一张“名片”,体现你的品味和兴趣,还有更重要的,它是免费的、可控…

服务器能绑定任意网站吗,域名只能绑定指定备案服务器吗

域名只能绑定指定备案服务器吗 内容精选换一换负载均衡器支持两种类型的证书,服务器证书和CA证书。配置HTTPS监听器时,需要为监听器绑定服务器证书,如果开启双向认证功能,还需要绑定CA证书。服务器证书:在使用HTTPS协议…

github pages搭建网站(三)

一、个人站点 访问 https://用户名.github.io搭建步骤 (1)创建个人站点 ->新建仓库(注:仓库名必须是【用户名.github.io】)(2)在仓库下新建index.html的文件即可注意:github pages只支持静态网页仓库里面只能是.htm…

小程序搜索框_正式发布!微信小程序seo搜索优化指南!

继上次发布小程序页面搜索指导之后,微信新发布小程序seo搜索优化指南,推出新的小程序搜索标准以下是微信官方发布的具体搜索标准:1. 小程序里跳转的页面 (url) 可被直接打开。小程序页面内的跳转url是我们爬虫发现页面的重要来源,…

景安重启服务器打不开网站,如何解决网站无法访问 Apache也无法启动?

如何解决网站无法访问 Apache也无法启动?1、错误现象这是景安一个客户的案例,客户告知网站无法访问了,并且Apache也无法启动。客户的网站是基于ApacheTomcatMysql构建,于是登录景安服务器查看信息如下图。这里提示的是http.pid文件…

cstatic 不调用onpaint_当网站收录不正常的时候 我们该如何排查

当我们发现网站收录异常的时候 我们该如何快速的去排查,这个很重要,也会影响到我们后面的优化工作。当网站收录不正常的时候 我们该如何排查什么是网站收录异常?通常而言,相当于网站收录异常的情况,主要包括如下几个方…

商城模板网站html5手机端_手机端应该怎么做网站优化?

图文来源于网络,若有侵权,请联系删除随着人们越来越依赖智能手机,所以有很多企业都越来越重视移动端的排名,其实移动端和pc端的网站优化同等重要。只是根据用户的需求对移动的网站进行优化调整。移动端网站优化需要哪些技巧?百度…

多语言功能html,jq中引入i18n - 实现网站多语言功能

目的:在纯js、jq的项目中引入i18n 。实现网站的多语言切换。一、项目结构js文件夹:在项目中引入jQuery,因为是基于JQuery的。引入jQuery版本的i18n,后面有下载地址。lang文件夹:里面存放自定义的语言包。index.html &a…

linux系统关机教程,Halt关机命令解析 - Linux操作系统关机有技巧_Linux教程_Linux公社-Linux系统门户网站...

二、Halt关机命令解析。Halt关机命令可以说是这六个关机命令中的老大。在这个命令中跟上不同的参数,可以实现不同的目的。在这个关机命令中,主要有如下七个参数。插图二:如-n参数,它主要用来防止sync系统调用。Linux系统中有的时候…

linux 事件处理函数,事件处理(上) - Boost学习系列_Linux编程_Linux公社-Linux系统门户网站...

一、概述相信大家在听到术语“事件处理”时就会想到GUI:点击一下某个按钮,相关联的功能就会被执行。点击本身就是事件,而功能就是相对应的事件处理器。当然这一模式的使用当然不仅限于GUI。一般情况下,任意对象都可以调用基于特定…

大型网站架构之分布式消息队列

大型网站架构之分布式消息队列 以下是消息队列以下的大纲,本文主要介绍消息队列概述,消息队列应用场景和消息中间件示例(电商,日志系统)。 本次分享大纲 消息队列概述消息队列应用场景消息中间件示例JMS消息服务常用消…

大型网站架构结构图

分布式高并发架构图: 支付系统典型架构: 平台架构: 支付宝架构: 架构知识体系: 研发体系: 缓存架构文案: 直播技术架构图: