基于chatgpt的微信自动回复功能实现

2023-02-24 11:02:51 功能 ChatGPT 自动回复

微信自动回复 基于聊天api

import pyautogui
import pyperclip
import keyboard
import requests
import time

print('程序即将开始,请打开微信!')

# 检测是否有新消息
def findNews():
    left, top, width, height = pyautogui.locateOnScreen("news.png", confidence=0.9)
    pyautogui.click(left + 20, top + 20)
    print('发现了新消息')

# 发送消息
def sendMsg():
    left, top, width, height = pyautogui.locateOnScreen('icon.png', confidence=0.9)
    print('获取到了图标位置')
    X = left + width
    pyautogui.rightClick(X, top - 40)
    pyautogui.click(X + 10, top - 40 + 10)
    friendMsg = pyperclip.paste() #将拷贝板内的文字转换为字符串
    print('好友的消息:' + friendMsg)
    url = 'https://v.api.aa1.cn/api/api-xiaoai/talk.PHP'
    print('正在思考如何回复...')
    res = requests.get(url, params="msg=" + friendMsg)
    time.sleep(1)
    reply = res.text
    print('即将发送的消息:' + reply)
    pyperclip.copy(reply)
    pyautogui.click(X, top + 50)
    pyautogui.hoTKEy('ctrl', 'v')
    time.sleep(3)
    pyautogui.press('enter')
    print('发送成功!')
    time.sleep(1)
    # 恢复原始状态
    print('恢复原始状态')
    left, top, width, height = pyautogui.locateOnScreen('reset.png', confidence=0.9)
    pyautogui.click(left + 20, top  + 20)

# 开始执行
while True:
    # time.sleep(1)
    # 如果按下退格键,则退出循环
    if keyboard.is_pressed('backspace'):
        print('按下了退格键,程序即将结束')
        break
    
    # 捕获错误
    try:
        findNews()
        sendMsg()

    except TypeError:
        print('没有发现新消息...', time.time())

pyautogui.alert(text='python程序已结束!', title='提示', button='好的')
print("程序已结束!") 

微信自动回复 基于chatgpt的

import openai
import pyautogui
import pyperclip
import keyboard
import time

openai.api_key = "你的chat-gpt API"
def chat_gpt(prompt):# 你的问题prompt = prompt# 调用 ChatGPT 接口
    model_engine = "text-davinci-003"
    completion = openai.Completion.create(
        engine=model_engine,
        prompt=prompt,
        max_tokens=1024,
        n=1,
        stop=None,
        temperature=0.5,)
    response = completion.choices[0].text
    return response
        

print('程序即将开始,请打开微信!')

# 检测是否有新消息
def findNews():
    left, top, width, height = pyautogui.locateOnScreen("news.png", confidence=0.9)
    pyautogui.click(left + 20, top + 20)
    print('发现了新消息')

# 发送消息
def sendMsg():
    left, top, width, height = pyautogui.locateOnScreen('icon.png', confidence=0.9)
    print('获取到了图标位置')
    X = left + width
    pyautogui.rightClick(X, top - 35)
    pyautogui.click(X + 10, top - 40 + 10)
    friendMsg = pyperclip.paste() #将拷贝板内的文字转换为字符串
    print('好友的消息:' + friendMsg)
    #url = 'Https://v.api.aa1.cn/api/api-xiaoai/talk.php'
    print('正在思考如何回复...')
    #res = requests.get(url, params="msg=" + friendMsg)
    #time.sleep(1)
    reply = chat_gpt(friendMsg).replace('?','').strip()
    print('即将发送的消息:' + reply)
    pyperclip.copy(reply)
    pyautogui.click(X, top + 50)
    pyautogui.hotkey('ctrl', 'v')
    time.sleep(1)
    pyautogui.press('enter')
    print('发送成功!')
    #time.sleep(1)
    # 恢复原始状态
    print('恢复原始状态')
    left, top, width, height = pyautogui.locateOnScreen('reset.png', confidence=0.9)
    pyautogui.click(left + 20, top  + 20)

# 开始执行
while True:
    # time.sleep(1)
    # 如果按下退格键,则退出循环
    if keyboard.is_pressed('backspace'):
        print('按下了退格键,程序即将结束')
        break
    
    # 捕获错误
    try:
        findNews()
        sendMsg()

    except TypeError:
        print('没有发现新消息...', time.time())

pyautogui.alert(text='Python程序已结束!', title='提示', button='好的')
print("程序已结束!") 

到此这篇关于基于chatgpt的微信自动回复功能实现的文章就介绍到这了,更多相关chatgpt微信自动回复内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章