#Laravel แพ็คเกจ Google Custom Search Engine Laravel เพื่อรับผลลัพธ์ Google Custom Search จาก Google Custom Search Engine API สำหรับทั้งเวอร์ชันฟรีและเสียเงิน
เมื่อ Swiftype ปิดแผนบริการฟรี ฉันเริ่มค้นหาทางเลือกอื่นโดยไม่ต้องเขียนโค้ดมากเกินไป แต่ก็ไม่ประสบผลสำเร็จ สิ่งที่ดีที่สุดที่ฉันพบคือแพ็คเกจ Google Search ของ Spatie สำหรับเวอร์ชันที่ต้องชำระเงินของ Google CSE ดังนั้นฉันจึงค้นคว้าและพัฒนาแพ็คเกจในลักษณะเดียวกัน แต่ไม่ขึ้นอยู่กับเวอร์ชันของ Google CSE
ถ้าคุณชอบโครงการนี้ คุณสามารถซื้อกาแฟให้ฉันเพื่อช่วยให้ฉันสดชื่นได้ :) https://ko-fi.com/A067ES5
1/ ติดตั้งด้วยโปรแกรมแต่งเพลง
composer require jan-drda/laravel-google-custom-search-engine
2/ เพิ่มผู้ให้บริการไปที่ config/app.php
' providers ' => [
' ... ' ,
' JanDrdaLaravelGoogleCustomSearchEngineLaravelGoogleCustomSearchEngineProvider '
];
3/ เพิ่มนามแฝงสำหรับ Facade เพื่อ config/app.php
' aliases ' => [
...
' GoogleCseSearch ' => ' JanDrdaLaravelGoogleCustomSearchEngineFacadesLaravelGoogleCustomSearchEngineProvider ' ,
...
]
4/ เผยแพร่ไฟล์กำหนดค่า
php artisan vendor:publish --provider= " JanDrdaLaravelGoogleCustomSearchEngineLaravelGoogleCustomSearchEngineProvider "
- ความสนใจ !! หากคุณเปลี่ยนรูปแบบของ Custom search engine คุณสามารถเปลี่ยน ID ได้
บันทึกรหัสเครื่องมือค้นหาและรหัส API ใน config/laravelGoogleCustomSearchEngine.php ของคุณ
สร้างวัตถุและเรียกใช้ฟังก์ชัน getResults เพื่อรับผลลัพธ์ 10 รายการแรก
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
มันเป็นเพียงชื่อคอนโทรลเลอร์ตัวอย่าง คุณสามารถใช้อะไรก็ได้ที่คุณต้องการ นี่เป็นประกาศสำหรับมือใหม่ใน 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'
}
}
คุณยังสามารถรับข้อมูลเกี่ยวกับการค้นหา เช่น บันทึกทั้งหมดและเวลาในการค้นหา
$ fulltext = new LaravelGoogleCustomSearchEngine (); // initialize
$ results = $ fulltext -> getResults ( ' some phrase ' ); // get first 10 results for query 'some phrase'
$ info = $ fulltext -> getSearchInformation (); // get search information
คุณสามารถใช้พารามิเตอร์ใดก็ได้ที่ Google รองรับ รายการพารามิเตอร์อยู่ที่นี่: https://developers.google.com/custom-search/json-api/v1/reference/cse/list#parameters
เช่นคุณต้องการได้รับผลลัพธ์ 10 รายการถัดไป
$ 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'
คุณยังสามารถรับผลลัพธ์ดิบจาก Google รวมถึงข้อมูลอื่น ๆ รายการตัวแปรการตอบสนองทั้งหมดมีอยู่ที่นี่: 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
เพื่อให้ได้ผลลัพธ์ตามจำนวนเท่านั้นให้ใช้
$ 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)
หากคุณมีเอ็นจิ้นมากกว่า / คีย์ API มากกว่า คุณสามารถแทนที่ตัวแปรการกำหนดค่าด้วยฟังก์ชันต่อไปนี้
$ 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'
เอกสารสำคัญจะอยู่ที่ Github Wiki ขณะนี้อยู่ระหว่างการพัฒนา
แพ็คเกจนี้เป็นซอฟต์แวร์โอเพ่นซอร์สที่ได้รับอนุญาตภายใต้ใบอนุญาต MIT
ฉันเป็นที่ปรึกษาอิสระอาวุโสด้านซอฟต์แวร์ที่อาศัยอยู่ในสาธารณรัฐเช็กในธุรกิจไอทีตั้งแต่ปี 1997