Laravel框架安装QueryList和Puppeteer实现数据采集

编辑于:2019年11月04日
Laravel框架安装QueryList和Puppeteer实现数据采集

最近观摩了飞哥使用Laravel框架和QueryList工具实现数据采集的过程,从中学会了ComposerLaravelNodejs-8QueryListComposer的安装,虫子菌分享如下。

1.项目部署环境

  • ⭕CentOS Linux 7.6
  • ⭕宝塔面板
  • ⭕Nginx 1.16.0
  • ⭕MySQL 5.7.25
  • ⭕PHP-7.2(7.3会有报错)

2.PHP设置

proc_open

PHP函数proc_open默认是被禁用的,会导致Laravel时报错,所以我们从禁用函数列表中将proc_open删除。

因项目需要,我还从禁用函数列表移除了 putenv readlink pcntl_exec 特此记录。

fileinfo

fileinfo是PHP的通用扩展,用于获取文件MIME,编码等信息,本项目会使用该扩展,所以进行预先安装

3.安装Composer

3.1安装目录

打开已有的目录/www/wwwroot/在该目录中新建一个名为cccitu目录,我们将把Composer将安装到新建的/www/wwwroot/cccitu/目录中。

当然你可以自由的设置项目目录,只需要将后续教程示例中的目录替换为你自定义的目录。

3.2安装过程

执行以下命令将Composer安装到目录/www/wwwroot/cccitu/

curl -sS https://getcomposer.org/installer | php -- --install-dir=/www/wwwroot/cccitu/

4.安装Laravel

4.1安装目录

我们使用Composer安装Laravel,需要先在终端中打开Composer的目录再执行安装命令。

cd /www/wwwroot/cccitu/

4.2安装最新版Laravel

通过composer安装最新版Laravel,并创建一个名为wanjijun的新 Laravel 应用。(命令中的wanjijun字符可自定义)

composer create-project --prefer-dist laravel/laravel wanjijun

4.3安装固定版Laravel

如果要安装指定版本Laravel,比如5.8版,可以执行如下命令

composer create-project --prefer-dist laravel/laravel wanjijun 5.8.*

4.4 曾遇到的问题

遇到过执行Laravel安装命令无反应的情况,经过多次排查可能是服务器系统环境问题,重新加载新系统或更换服务器后完成了安装。

5.安装Nodejs-8

5.1安装目录

执行如下命令打开服务器根目录

cd ~

5.2安装Nodejs-8

先执行如下命令

curl -sL https://rpm.nodesource.com/setup_8.x | bash -

在执行如下命令

yum install nodejs

安装过程可能会有一些y/n(是/否)提示,输入y点击回车键即可。

5.3查看版本

//查看Nodejs版本
node -v
//查看npm版本
npm -v

6.安装QueryList

6.1安装目录

QueryList的安装目录和Laravel在同一个目录,在上述示例中Laravel的安装目录是/www/wwwroot/cccitu/wanjijun所以执行如下命令进入该目录

cd /www/wwwroot/cccitu/wanjijun

6.2安装QueryList

执行如下命令

composer require jaeger/querylist

7.安装Puppeteer

7.1安装目录

与QueryList一样,也是/www/wwwroot/cccitu/wanjijun

7.2安装Puppeteer

//安装插件
composer require jaeger/querylist-puppeteer
//安装Node依赖
npm install @nesk/puphpeteer

7.3安装Puppeteer依赖

出现过运行Puppeteer时,报error while loading shared libraries: libXcomposite.so.1等依赖错误,可通过执行如下命令安装依赖包。

yum -y install libX11 libXcomposite libXcursor libXdamage libXext libXi libXtst cups-libs libXScrnSaver libXrandr alsa-lib pango atk at-spi2-atk gtk3

8.创建网站

在宝塔面板添加域名创建网站,有两点需要注意

8.1站点目录

网站目录/www/wwwroot/cccitu/wanjijun
运行目录/public

8.2伪静态

在伪静态列表中选择laravel5

location / {  
	try_files $uri $uri/ /index.php$is_args$query_string;  
}  

完成

我们通过上述步骤完成了ComposerLaravelNodejs-8QueryListComposer的安装,并创建了位于/www/wwwroot/cccitu/wanjijun的新站点。

相关推荐

禁止IP或IP段访问SSH:hosts.allow 和 hosts.deny

禁止IP或IP段访问SSH:hosts.allow 和 hosts.deny

Linux 系统/etc/目录下的文件hosts.allow和hosts.deny,可以允许或拒绝某个IP、IP段访问系统中使用了libwrap库的服务,如telnetd、ftpd、sshd等。 hosts.allow 和 hosts.deny 当远程请求到达本机时,会先检查/et ...

Hosts的文件位置,和如何修改Hosts

Hosts的文件位置,和如何修改Hosts

Hosts文件是一个简单的文本文件,用于将域名映射到 IP 地址。它的主要作用是在本地系统中解析域名,从而可以覆盖 DNS 服务器返回的解析结果。格式是一行一条,比如:127.0.0.1 www.baidu.com,每条为IP地址+域名 ...

Debian/Ubuntu开启TCP BBR加速

Debian/Ubuntu开启TCP BBR加速

Debian9 系统默认的是编译了 TCP BBR 的 4.9版内核,所以采用了Debian9系统的服务器可以不用进行繁琐的安装,仅通过几条简单的参数命令就能开启BBR加速。

CentOS 如何开启 BBR 加速?

CentOS 如何开启 BBR 加速?

Google 开源的 BBR 拥塞控制算法,可以改善网络传输速度,尤其是海外服务器和中国之间的网络传输。BBR 从Linux 4.9开始内置,因此如果系统的内核版本高于 4.9 就可以很方便的启用,如果低于4.9 就需要先升级内核 ...

暂无评论