python實(shí)現(xiàn)半自動(dòng)化發(fā)送微信信息
本文實(shí)例為大家分享了python半自動(dòng)化發(fā)送微信信息的具體代碼,供大家參考,具體內(nèi)容如下
相關(guān)第三方庫
1.pyautogui
自動(dòng)操作鼠標(biāo)、鍵盤的第三方庫
2.pyperclip
用于將文本復(fù)制和粘貼到剪貼板
3.requests
HTTP第三方庫
4.psutil
可以查看系統(tǒng)信息,進(jìn)程、CPU等
5.騰訊地圖API
因?yàn)槲蚁雽?shí)現(xiàn)發(fā)送定位,所以需要用
總體思路
1.先手動(dòng)登錄微信
2.使用os模塊調(diào)用微信進(jìn)程
3.使用pyautogui模塊來自動(dòng)操作微信的快捷鍵,實(shí)現(xiàn)搜索好友、發(fā)送信息,pyperclip模塊用來復(fù)制需要發(fā)送的中文
4.使用requests模塊來調(diào)用騰訊地圖的API
具體代碼
# -*- coding: utf-8 -* import sys import psutil import pyautogui import time import os import pyperclip import json import requests def main(): # 先確認(rèn)是否登錄微信 confirms = pyautogui.confirm("微信已登錄?", "請(qǐng)先登錄微信!") if confirms == "Cancel": sys.exit() get_wechat() find_friend() msg = locate() # 發(fā)送內(nèi)容 send(msg) # 定位 def locate(): url = "https://apis.map.qq.com/ws/location/v1/ip?key=自己申請(qǐng)的key" session = requests.Session() # 取消代理 session.trust_env = False resp = session.get(url) print(resp.json()) adress = resp.json() print(adress["result"]["location"]) # 獲取到經(jīng)緯度 point = adress["result"]["location"] # 由經(jīng)緯度獲取定位 pointUrl = "https://apis.map.qq.com/uri/v1/geocoder?coord=" + str(point["lat"]) + "," + str( point["lng"]) + "&referer=自己申請(qǐng)的key" print(pointUrl) return pointUrl def find_friend(): pyautogui.hotkey("ctrl", "f") pyautogui.hotkey("ctrl", "a") pyautogui.hotkey("delete") content = pyautogui.prompt("請(qǐng)輸入好友名:") 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") # 查找進(jìn)程 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("請(qǐng)先登錄微信!") if __name__ == '__main__': pyautogui.FAILSAFE = True pyautogui.PAUSE = 0.2 main()
不足之處
1、發(fā)送定位,發(fā)送的只能是一個(gè)鏈接,沒有實(shí)現(xiàn)手機(jī)微信定位所實(shí)現(xiàn)的可預(yù)覽的效果
2、搜索好友時(shí),沒有辨別輸入的是例如聊天內(nèi)容等其他東西,所以需要用戶確保自己輸入的是好友名
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 使用python實(shí)現(xiàn)自動(dòng)化控制電腦版微信
- Python實(shí)現(xiàn)微信高效自動(dòng)化操作
- 利用Python找出刪除自己微信的好友并將他們自動(dòng)化刪除
- Python+Appium自動(dòng)化操作微信的教程分享
- Python實(shí)現(xiàn)APP自動(dòng)化發(fā)微信群消息的示例代碼
- 基于python實(shí)現(xiàn)微信收紅包自動(dòng)化測試腳本(測試用例)
- Python+Appium實(shí)現(xiàn)自動(dòng)化清理微信僵尸好友的方法
- Python wxauto 庫解鎖微信自動(dòng)化的無限可能(示例代碼)
相關(guān)文章
探索Python數(shù)據(jù)可視化庫中Plotly Express的使用方法
在數(shù)據(jù)分析和可視化領(lǐng)域,數(shù)據(jù)的有效呈現(xiàn)是至關(guān)重要的,python作為一種強(qiáng)大的編程語言,提供了多種數(shù)據(jù)可視化工具和庫,本文將介紹Plotly Express的基本概念和使用方法,幫助讀者快速入門并掌握數(shù)據(jù)可視化的技巧2023-06-06Django定制Admin頁面詳細(xì)實(shí)例(展示頁面和編輯頁面)
django自帶的admin因?yàn)楣δ芎蜆邮奖容^簡陋,常常需要再次定制,下面這篇文章主要給大家介紹了關(guān)于Django定制Admin頁面(展示頁面和編輯頁面)的相關(guān)資料,需要的朋友可以參考下2023-06-06布隆過濾器的概述及Python實(shí)現(xiàn)方法
布隆過濾器是一種概率空間高效的數(shù)據(jù)結(jié)構(gòu)。它與hashmap非常相似,用于檢索一個(gè)元素是否在一個(gè)集合中。這篇文章主要介紹了布隆過濾器的概述及Python實(shí)現(xiàn),需要的朋友可以參考下2019-12-12Python使用tkinter模塊實(shí)現(xiàn)GUI界面的學(xué)生信息管理系統(tǒng)流程分步詳解
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡易學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2023-01-01利用Python實(shí)現(xiàn)繪制論文中的曲線圖
這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)繪制論文中需要的曲線圖,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-03-03Async?IO在Python中的異步編程工作實(shí)例解析
這篇文章主要為大家介紹了Async?IO在Python中的異步編程工作實(shí)例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Python GUI之tkinter窗口視窗教程大集合(推薦)
這篇文章主要介紹了Python GUI之tkinter窗口視窗教程大集合,看這一篇教程足了,本文通過圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10