#Laravel Google Custom Search Engine Package Laravel pour obtenir les résultats de recherche personnalisée Google à partir de l'API du moteur de recherche personnalisé Google pour la version gratuite et payante.
Alors que Swiftype fermait les forfaits gratuits, j'ai commencé à trouver une alternative sans trop de codage, mais sans succès. Le meilleur que j'ai trouvé était le package de recherche Google de Spatie pour la version payante de Google CSE. J'ai donc fait quelques recherches et développé un package de la même manière, mais indépendant de la version de Google CSE.
Si ce projet vous plaît, vous pouvez m'offrir un café pour m'aider à me rafraîchir. :) https://ko-fi.com/A067ES5
1/ Installer avec Composer
composer require jan-drda/laravel-google-custom-search-engine
2/ Ajoutez le fournisseur de services à config/app.php
' providers ' => [
' ... ' ,
' JanDrdaLaravelGoogleCustomSearchEngineLaravelGoogleCustomSearchEngineProvider '
];
3/ Ajouter l'alias de Facade à config/app.php
' aliases ' => [
...
' GoogleCseSearch ' => ' JanDrdaLaravelGoogleCustomSearchEngineFacadesLaravelGoogleCustomSearchEngineProvider ' ,
...
]
4/ Publier le fichier de configuration
php artisan vendor:publish --provider= " JanDrdaLaravelGoogleCustomSearchEngineLaravelGoogleCustomSearchEngineProvider "
!! Attention !! Si vous changez le style de votre moteur de recherche personnalisé, l'ID peut être modifié
Enregistrez l'ID du moteur de recherche et l'ID de l'API dans votre config/laravelGoogleCustomSearchEngine.php
Créez un objet et appelez la fonction getResults pour obtenir les 10 premiers résultats
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
Ce n'est qu'un exemple de nom de contrôleur, vous pouvez utiliser ce que vous voulez, ceci est principalement destiné aux novices en Laravel
namespace App Http Controllers ;
use App Http Controllers Controller ;
use JanDrda LaravelGoogleCustomSearchEngine LaravelGoogleCustomSearchEngine ;
class GoogleSearchController extends Controller
{
public function index (){
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
}
}
Vous pouvez également obtenir des informations sur la recherche comme le nombre total d'enregistrements et la durée de la recherche.
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
$ info = $ fulltext -> getSearchInformation (); // get search information
Vous pouvez utiliser n'importe quel paramètre pris en charge par Google. La liste des paramètres est ici : https://developers.google.com/custom-search/json-api/v1/reference/cse/list#parameters
Par exemple, vous souhaitez obtenir les 10 prochains résultats
$ parameters = array (
' start ' => 10 // start from the 10 th results,
' num ' => 10 // number of results to get, 10 is maximum and also default value
)
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' , $ parameters ); // get second 10 results for query 'some phrase'
Vous pouvez également obtenir le résultat brut de Google, y compris d'autres informations. La liste complète des variables de réponse est disponible ici : https://developers.google.com/custom-search/json-api/v1/reference/cse/list#response
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
$ rawResults = $ fulltext -> getRawResults (); // get complete response from Google
Pour obtenir le nombre de résultats, utilisez uniquement
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
$ noOfResults = $ fulltext -> getTotalNumberOfResults (); // get total number of results (it can be less than 10)
Si vous avez plus de moteurs/plus de clés API, vous pouvez remplacer les variables de configuration avec les fonctions suivantes
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ fulltext -> setEngineId ( ' someEngineId ' ); // sets the engine ID
$ fulltext -> setApiKey ( ' someApiId ' ); // sets the API key
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
La documentation essentielle sera sur Github Wiki. Il est actuellement en cours de développement.
Ce package est un logiciel open source sous licence MIT
Je suis consultant senior indépendant en logiciels vivant en République tchèque dans le secteur informatique depuis 1997.