這是使用node.js and express.js構建的簡單API,它允許您通過提供圖像URL執行Google逆向圖像搜索。 API使用Cheerio將Google的圖像搜索引擎的HTML刪除,以獲取結果文本和類似的圖像URL。
API目前託管在Vercel上。您可以使用此鏈接訪問它。
要使用API,您需要使用包含圖像URL的JSON有效載荷向/reverse
端點提出發布請求。這是一個使用curl
的示例:
Invoke-RestMethod -Uri " https://google-reverse-image-api.vercel.app/reverse " -Method Post -Headers @{ " Content-Type " = " application/json " } -Body ' {"imageUrl": "https://fastly.picsum.photos/id/513/200/300.jpg?hmac=KcBD-M89_o9rkxWW6PS2yEfAMCfd3TH9McppOsf3GZ0"} '
如果搜索成功,則API將使用一個包含Google搜索的標題和鏈接的JSON對象。這是一個示例回复:
{
"success" : true ,
"message" : " Successfully Got the Result " ,
"data" : {
"similarUrl" : " https://www.google.com/search?tbm=isch&q=Elderly%20person " ,
"resultText" : " Results forÂElderly person "
}
}
如果在搜索過程中存在錯誤,則API將使用包含錯誤字段的JSON對象響應,其中包含一個錯誤字段。這是一個示例回复:
{
"success" : false ,
"message" : " Failed to find text output " ,
"data" : null
}
要在Python項目中使用此API,您可以使用requests
庫將其發佈到API端點。這是一個例子:
import requests
url = "https://google-reverse-image-api.vercel.app/reverse"
data = { "imageUrl" : "https://fastly.picsum.photos/id/513/200/300.jpg?hmac=KcBD-M89_o9rkxWW6PS2yEfAMCfd3TH9McppOsf3GZ0" }
response = requests . post ( url , json = data )
if response . ok :
print ( response . json ())
else :
print ( response . status_code )
要在JavaScript項目中使用API,您可以使用fetch
函數向API端點提出發布請求。這是一個例子:
const url = "https://google-reverse-image-api.vercel.app/reverse" ;
const data = { imageUrl : "https://fastly.picsum.photos/id/513/200/300.jpg?hmac=KcBD-M89_o9rkxWW6PS2yEfAMCfd3TH9McppOsf3GZ0" } ;
fetch ( url , {
method : "POST" ,
headers : { "Content-Type" : "application/json" } ,
body : JSON . stringify ( data ) ,
} )
. then ( ( response ) => {
if ( response . ok ) {
return response . json ( ) ;
} else {
throw new Error ( "Could not perform reverse image search." ) ;
}
} )
. then ( ( data ) => console . log ( data ) )
. catch ( ( error ) => console . error ( error ) ) ;
該API可以輕鬆在您的Python電報機器上使用。此處存在模塊示例代碼。如果您是電報機器人開發的新手,則可以分配Shikimoribot存儲庫。
我將盡快提供代碼。
該API可以部署到支持Node.js應用程序的任何云平台。一個流行的選項是Vercel,它允許您以零配置部署Node.js應用程序。
要將此API部署到Vercel,請單擊下面的按鈕:
這個項目是由某個鍛造創建的。隨意使用並為自己的項目修改此代碼。如果您發現此項目有幫助,請考慮在Github上給它一個配。
該項目是根據MIT許可證獲得許可的 - 有關詳細信息,請參見許可證文件。
通過使用此API,您同意以下條款: