返回介绍

使用插件

发布于 2021-04-06 13:23:43 字数 1655 浏览 1244 评论 0 收藏 0

使用插件实现无限可能。


QueryList使用use()方法来注册插件。

目前收录的一些QueryList插件: https://github.com/jae-jae/QueryList-Community

用法

有两种用法

注册单个插件,可携带安装参数。

$ql = QueryList::getInstance();
$ql->use(My\MyPlugin::class);
//或者,带安装参数
$ql->use(My\MyPlugin::class,$arg1,$arg2,$arg3);

同时注册多个插件,不能携带安装参数。

$ql = QueryList::getInstance();
$ql->use([
 My\MyPlugin::class,
 My\MyPlugin2::class,
 Other\OtherPlugin::class
]);

例子

PhantomJS插件用于采集Javascript动态渲染的网页内容,插件项目地址:https://github.com/jae-jae/QueryList-PhantomJS

安装插件

在QueryList项目中执行composer命令:

composer require jaeger/querylist-phantomjs

使用插件

此插件注册时需要携带2个参数,一个参数是PhantomJS二进制文件路径,另一个可选参数是注册的函数名称。

use QL\QueryList;
use QL\Ext\PhantomJs;

$ql = QueryList::getInstance();

注册插件,使用默认函数名称,此插件的默认函数名称为browser

$ql->use(PhantomJs::class,'/usr/local/bin/phantomjs');
// 使用插件
$html = $ql->browser('https://m.toutiao.com')->getHtml();
print_r($html);

注册插件,使用自定义函数名称chrome

$ql->use(PhantomJs::class,'/usr/local/bin/phantomjs','chrome');
// 使用插件
$html = $ql->chrome('https://m.toutiao.com')->getHtml();
print_r($html);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文