amark / laravelsearchengine
此软件包的最新版本(dev-master)没有可用的许可证信息。
Laravel 软件包,用于从 Google 自定义搜索引擎 API 获取 Google 自定义搜索结果。
dev-master
2022-07-08 20:13 UTC
This package is auto-updated.
Last update: 2024-09-09 00:45:10 UTC
README
1/ 使用 Composer 安装
composer require amark/laravelsearchengine
2/ 将服务提供者添加到 config/app.php
'providers' => [ '...', AmarK\LaravelSearchEngine\LaravelSearchEngineProvider::class ];
创建您的自定义搜索引擎
- 如果您在 https://#/cse/ 创建引擎,您将在点击“设置”后找到 ID
- 只需检查您的 URL,例如 https://#/cse/setup/basic?cx=search_engine_id,其中 cx= 后的字符串是您的搜索引擎 ID
!! 注意 !! 如果您更改自定义搜索引擎的样式,ID 可能会更改
获取您的 API 密钥
- 访问 https://console.developers.google.com,然后
- 点击 GoogleAPI 标志右侧的菜单并点击“创建项目”
- 输入新项目的名称 - 由您决定,您可以使用“Google CSE”
- 等待项目创建完成 - 指示器是右上角围绕铃铛图标的颜色圆圈
- 显示 API 列表 - 搜索“Google Custom Search API”并点击它
- 点击自定义搜索 API 标题右侧的“启用”图标
- 点击左侧菜单下的“Library”部分下的“Credentials”
- 点击“创建凭证”并选择“API 密钥”
- 您的 API 密钥已显示,因此复制并粘贴它在这里
保存配置值
将搜索引擎 ID 和 api ID 保存到您的 config/laravelSearchEngine.php
用法
创建一个对象并调用 getResults 函数以获取前 10 个结果
$textresult = new LaravelSearchEngine(); // initialize $results = $textresult->getResults('search text'); // get first 10 results for query 'search text'
namespace App\Http\Controllers; use App\Http\Controllers\Controller; use AmarK\LaravelSearchEngine\LaravelSearchEngine; class GoogleSearchController extends Controller { public function index(){ $textResult = new LaravelSearchEngine(); // initialize $results = $textResult->getResults('search text'); // get first 10 results for query 'search text' } }
$parameters = array( 'start' => 10 // start from the 10th results, 'num' => 10 // number of results to get, 10 is maximum and also default value ) $textresult = new LaravelSearchEngine(); // initialize $results = $textresult->getResults('search text', $parameters); // get second 10 results for query 'search text'
$textResult = new LaravelSearchEngine(); // initialize $results = $textResult->getResults('search text'); // get first 10 results for query 'search text' $rawResults = $textResult->getRawResults(); // get complete response from Google
仅要获取结果数量,请使用
$textResult = new LaravelSearchEngine(); // initialize $results = $textResult->getResults('search text'); // get first 10 results for query 'search text' $noOfResults = $textResult->getTotalNumberOfResults(); // get total number of results (it can be less than 10)
如果您有更多引擎/更多 API 密钥,可以使用以下函数覆盖配置变量
$textResult = new LaravelSearchEngine(); // initialize $textResult->setEngineId('someEngineId'); // sets the engine ID $textResult->setApiKey('someApiId'); // sets the API key $results = $textResult->getResults('search text'); // get first 10 results for query 'search text'
如果要查找仅搜索 URL、标题和描述。默认情况下仅提供 10 个结果
$textResult = new LaravelSearchEngine(); // initialize $results = $textResult->getResults('search text'); // get first 10 results for query 'search text' $fewResults = $textResult->getFewDetails(); // get first 10 results for query 'search text'