PHP使用QueryList轻松实现一个百度网盘资源搜索引擎
Posted Jaeger
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP使用QueryList轻松实现一个百度网盘资源搜索引擎相关的知识,希望对你有一定的参考价值。
QueryList使用jQuery的方式来做采集,拥有丰富的插件。
下面来演示QueryList
使用Baidu搜索引擎
插件轻松实现站内搜索。
安装
使用Composer安装:
- 安装QueryList
composer require jaeger/querylist
GitHub: https://github.com/jae-jae/Qu...
- 安装Baidu搜索引擎插件
composer require jaeger/querylist-rule-baidu
GitHub: https://github.com/jae-jae/Qu...
插件API
- Baidu baidu($pageNumber = 10):获取百度搜索引擎
class Baidu:
- Baidu search($keyword):设置搜索关键词
- Baidu setHttpOpt(array $httpOpt = []):设置HTTP选项,查看: GuzzleHttp options
- int getCount():获取搜索结果总条数
- int getCountPage():获取搜索结果总页数
- Collection page($page = 1,$realURL = false):获取搜索结果
使用
- 实现一个百度网盘资源搜索引擎:
<?php
require \'vendor/autoload.php\';
use QL\\QueryList;
use QL\\Ext\\Baidu;
$ql = QueryList::use(Baidu::class);
// 搜索百度网盘网站,包含‘百度’关键词的资源
$searcher = $ql->baidu()->search(\'site:pan.baidu.com 百度\');
// 获取第一页数据,并获取真实URL连接地址
$data = $searcher->page(1,true);
print_r($data->all());
抓取结果:
Array
(
[0] => Array
(
[title] => 百度网盘_享你所想
[link] => http://pan.baidu.com/
)
[1] => Array
(
[title] => 百度网盘 客户端下载
[link] => https://pan.baidu.com/download
)
[2] => Array
(
[title] => 百度网盘-开放平台
[link] => https://pan.baidu.com/platform/read
)
// ....
)
- 更多用法
$baidu = $ql->baidu(15); // 设置每页搜索15条结果
$searcher = $baidu->search(\'QueryList\');
$count = $searcher->getCount(); // 获取搜索结果总条数
$data = $searcher->page(1);
$data = $searcher->page(2);
$searcher = $baidu->search(\'php\');
$countPage = $searcher->getCountPage(); // 获取搜索结果总页数
for ($page = 1; $page <= $countPage; $page++)
{
$data = $searcher->page($page);
}
$data = $searcher->setHttpOpt([
// 设置http代理
\'proxy\' => \'http://222.141.11.17:8118\',
// Set the timeout time in seconds
\'timeout\' => 30,
])->page(1);
Google搜索引擎插件
当然除了Baidu搜索引擎插件,QueryList也有Google搜索引擎插件,也可以实现同样的功能。
文档: https://doc.querylist.cc/site...
GitHub: https://github.com/jae-jae/Qu...
以上是关于PHP使用QueryList轻松实现一个百度网盘资源搜索引擎的主要内容,如果未能解决你的问题,请参考以下文章
QueryList 4.0 简洁优雅可扩展的PHP采集工具(爬虫)
PHP简单爬虫 基于QueryList采集库 和 ezsql数据库操作类
PHP类推荐:QueryList|基于phpQuery的无比强大的PHP采集工具