通过python实现Google的精准搜索

问题背景:

我想通过Google或者其他网站通过精准搜索确认该产品是否存在,但是即使该产品不存在Google也会返回一些相关的url链接,现在想通过python实现搜索结果的精准匹配以确认该产品是否为正确的名称【可以通过google搜索到,如果搜索不到则认为该产品不存在】,以下为精准结果截图

实现代码:

python 复制代码
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 = '"高档数控机床用变频智能电动执行器(电动夹爪)"'
query = '"CAE---多学科设计集成与优化"'
res = []
for query in ["新能源汽车电池","高档数控机床用变频智能电动执行器(电动夹爪)","CAE---多学科设计集成与优化"]:
    res.append(is_product(query))

print(res)
相关推荐
我是坏垠19 分钟前
Crypto、Cipher与Password:Java加密开发的三个核心概念
java·开发语言·python
white_ant39 分钟前
JDK LTS 版本升级迁移注意事项大全
java·开发语言
Bobolink_1 小时前
跨境业务网络环境评估,“干净、一致、独享”三个关键指标
开发语言·网络·php·跨境网络·网络环境
你怎么知道我是队长1 小时前
JavaScript的变量和数据类型介绍
开发语言·javascript·ecmascript
xingke1 小时前
C 语言多文件编程:(一)头文件、extern、编译链接
c语言·开发语言·多文件
测试秃头怪1 小时前
如何评估自动化测试脚本的编写时间和维护工作量?
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
姚青&2 小时前
测试左移体系
python·自动化
技术民工之路2 小时前
Python Socket编程零基础实战教程(TCP/UDP通信完整版)
python·tcp/ip·udp
戮漠summer2 小时前
Missing Semester 计算机教育中缺失的一课 Lecture 01 Shell
开发语言·后端·scala