通過(guò)python實(shí)現(xiàn)Google的精準(zhǔn)搜索功能
問(wèn)題背景:
我想通過(guò)Google或者其他網(wǎng)站通過(guò)精準(zhǔn)搜索確認(rèn)該產(chǎn)品是否存在,但是即使該產(chǎn)品不存在Google也會(huì)返回一些相關(guān)的url鏈接,現(xiàn)在想通過(guò)python實(shí)現(xiàn)搜索結(jié)果的精準(zhǔn)匹配以確認(rèn)該產(chǎn)品是否為正確的名稱【可以通過(guò)google搜索到,如果搜索不到則認(rèn)為該產(chǎn)品不存在】,以下為精準(zhǔn)結(jié)果截圖
實(shí)現(xiàn)代碼:
import requests from bs4 import BeautifulSoup def is_product(product): query = product.replace(' ', '+') query = '"'+query+'"' add = '&sca_esv=396701017a0fe9d3&sca_upv=1&sxsrf=ADLYWIKWgdKR0hofOSCSRshq3fR-z5vDMA%3A1715482705794&ei=UTBAZqCXMMvK1e8Pw_C8gAk&ved=0ahUKEwjgg7CKj4eGAxVLZfUHHUM4D5AQ4dUDCBE&uact=5&oq=%22%E6%96%B0%E8%83%BD%E6%BA%90%E6%B1%BD%E8%BD%A6%E7%94%B5%E6%B1%A0%22&gs_lp=Egxnd3Mtd2l6LXNlcnAiFyLmlrDog73mupDmsb3ovabnlLXmsaAiMgYQABgeGA8yBhAAGB4YDzIGEAAYHhgPMggQABiABBiiBDIIEAAYgAQYogQyCBAAGIAEGKIESP8FUABYAHAAeACQAQCYAeIBoAHiAaoBAzItMbgBA8gBAPgBAvgBAZgCAaAC5QGYAwCSBwMyLTGgB8kC&sclient=gws-wiz-serp' URL = f"https://www.google.com/search?q={query}&as_q={query}&tbs=li:1" print(URL) headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" } resp = requests.get(URL, headers=headers) decoded_text = resp.text # print(">>>" * 20) # print(decoded_text) # print(">>>" * 20) results = [] if resp.status_code == 200: soup = BeautifulSoup(resp.content, "html.parser") # print(soup) for g in soup.find_all('div', class_='tF2Cxc'): title = g.find('h3').text link = g.find('a')['href'] item = { "title": title, "link": link } results.append(item) print(results) else: print("Failed to fetch search results") return True if len(results)>=1 else False query = '"新能源汽車電池"' query = '"高檔數(shù)控機(jī)床用變頻智能電動(dòng)執(zhí)行器(電動(dòng)夾爪)"' query = '"CAE—多學(xué)科設(shè)計(jì)集成與優(yōu)化"' res = [] for query in ["新能源汽車電池","高檔數(shù)控機(jī)床用變頻智能電動(dòng)執(zhí)行器(電動(dòng)夾爪)","CAE—多學(xué)科設(shè)計(jì)集成與優(yōu)化"]: res.append(is_product(query)) print(res)
到此這篇關(guān)于通過(guò)python實(shí)現(xiàn)Google的精準(zhǔn)搜索功能的文章就介紹到這了,更多相關(guān)python精準(zhǔn)搜索內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在Keras中利用np.random.shuffle()打亂數(shù)據(jù)集實(shí)例
這篇文章主要介紹了在Keras中利用np.random.shuffle()打亂數(shù)據(jù)集實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06Python實(shí)現(xiàn)分割文件及合并文件的方法
這篇文章主要介紹了Python實(shí)現(xiàn)分割文件及合并文件的方法,涉及Python針對(duì)文件的分割與合并操作相關(guān)技巧,通過(guò)自定義函數(shù)split與join實(shí)現(xiàn)了文件的分割與合并操作,需要的朋友可以參考下2015-07-07Python實(shí)現(xiàn)一維插值方法的示例代碼
插值主要用于物理學(xué)數(shù)學(xué)中,逼近某一確定值的方法,是通過(guò)已知的離散數(shù)據(jù)求未知數(shù)據(jù)的方法。本文將利用Python實(shí)現(xiàn)一維插值方法,需要的可以參考一下2022-04-04使用python解析xml成對(duì)應(yīng)的html示例分享
這篇文章主要介紹了使用python解析xml成對(duì)應(yīng)的html示例,需要的朋友可以參考下2014-04-04Python實(shí)現(xiàn)PS濾鏡中的USM銳化效果
這篇文章主要介紹了Python實(shí)現(xiàn)PS濾鏡中的USM銳化效果,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下2020-12-12基于Pydantic封裝的通用模型在API請(qǐng)求驗(yàn)證中的應(yīng)用詳解
這篇文章主要介紹了基于Pydantic封裝的通用模型在API請(qǐng)求驗(yàn)證中的應(yīng)用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2023-05-05Python的多種對(duì)象工廠模式方便代碼維護(hù)擴(kuò)展
這篇文章主要為大家介紹了Python的多種對(duì)象工廠模式更方便我們進(jìn)行代碼維護(hù)擴(kuò)展,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01