IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python半自动化发送微信信息 -> 正文阅读

[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. 搜索好友时,没有辨别输入的是例如聊天内容等其他东西,所以需要用户确保自己输入的是好友名

若汝可完善上述不足,望告之

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-08-09 10:12:00  更:2021-08-09 10:13:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 13:21:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码