新闻动态

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

发布日期:2022-02-09 15:07 | 文章来源:站长之家

本文实例为大家分享了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、搜索好友时,没有辨别输入的是例如聊天内容等其他东西,所以需要用户确保自己输入的是好友名

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

香港服务器租用

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部