网络编程
位置:首页>> 网络编程>> Python编程>> python实现半自动化发送微信信息

python实现半自动化发送微信信息

作者:fsociety_  发布时间:2023-07-16 09:15:38 

标签:python,发送微信

本文实例为大家分享了python半自动化发送微信信息的具体代码,供大家参考,具体内容如下

相关第三方库

1.pyautogui
自动操作鼠标、键盘的第三方库

2.pyperclip
用于将文本复制和粘贴到剪贴板

3.requests
HTTP第三方库

4.psutil
可以查看系统信息,进程、CPU等

5.腾讯地图API
因为我想实现发送定位,所以需要用

总体思路

1.先手动登录微信

2.使用os模块调用微信进程

3.使用pyautogui模块来自动操作微信的快捷键,实现搜索好友、发送信息,pyperclip模块用来复制需要发送的中文

4.使用requests模块来调用腾讯地图的API

具体代码


# -*- coding: utf-8 -*
import sys

import psutil
import pyautogui
import time
import os
import pyperclip
import json
import requests

def main():
   # 先确认是否登录微信
   confirms = pyautogui.confirm("微信已登录?", "请先登录微信!")
   if confirms == "Cancel":
       sys.exit()
   get_wechat()
   find_friend()
   msg = locate()
   # 发送内容
   send(msg)

# 定位
def locate():
   url = "https://apis.map.qq.com/ws/location/v1/ip?key=自己申请的key"
   session = requests.Session()
   # 取消代理
   session.trust_env = False
   resp = session.get(url)
   print(resp.json())
   adress = resp.json()
   print(adress["result"]["location"])
   # 获取到经纬度
   point = adress["result"]["location"]
   # 由经纬度获取定位
   pointUrl = "https://apis.map.qq.com/uri/v1/geocoder?coord=" + str(point["lat"]) + "," + str(
       point["lng"]) + "&referer=自己申请的key"
   print(pointUrl)
   return pointUrl

def find_friend():
   pyautogui.hotkey("ctrl", "f")
   pyautogui.hotkey("ctrl", "a")
   pyautogui.hotkey("delete")
   content = pyautogui.prompt("请输入好友名:")
   if content is None:
       sys.exit()
   pyperclip.copy(content)
   pyautogui.hotkey("ctrl", "v")
   pyautogui.hotkey("enter")

def send(msg):
   pyperclip.copy(msg)
   pyautogui.hotkey("ctrl", "v")
   pyautogui.hotkey("enter")

# 查找进程
def get_wechat():
   flag = False
   pids = psutil.process_iter()
   for p in pids:
       if p.name() == "WeChat.exe":
           flag = True
           print(p.name())
           print(p.exe())
           os.system(p.exe())
           break
       else:
           continue
   if not flag:
       pyautogui.alert("请先登录微信!")

if __name__ == '__main__':
   pyautogui.FAILSAFE = True
   pyautogui.PAUSE = 0.2
   main()

不足之处

1、发送定位,发送的只能是一个链接,没有实现手机微信定位所实现的可预览的效果
2、搜索好友时,没有辨别输入的是例如聊天内容等其他东西,所以需要用户确保自己输入的是好友名

来源:https://blog.csdn.net/qq_37688753/article/details/119518143

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com