1. 程式人生 > >使用樹莓派定時給微信群發訊息

使用樹莓派定時給微信群發訊息

需求強烈

單位領導要求在微信群天天定時彙報個人情況,此處個人情況內容是固定的(這個很重要)。春節過年,哪能天天記著去發微信,而且心理惦記個事也是很難受的,因此決定看看能不能開發程式解決!

主要過程

網上百度了一下,度娘還是很厲害的,立馬給出了微信網頁客戶端開發工具itchat。
為了能定時發信息,利用手頭一個樹莓派(可連線家裡的路由器上網際網路)來進行開發。再次百度發現有大神已經完成了,哈哈哈!
請參考:
http://blog.csdn.net/yanlovehan/article/details/78302397

為了便於看客實現,在此贅述一下過程:

基本環境

基本的Python環境就不說了,安裝樹莓派系統基本都是自帶的。

安裝itchat:

sudo pip install itchat

安裝輔助工具

sudo pip install xlrd-1.1.0-py2.py3-none-any.whl
sudo pip install APScheduler-3.5.1-py2.py3-none-any.whl

準備程式碼指令碼

import sys
reload(sys)
sys.setdefaultencoding("utf-8")

from datetime import datetime
import itchat
import xlrd
from apscheduler.schedulers.background import
BlockingScheduler def SentChatRoomsMsg(name, context): itchat.get_chatrooms(update=True) iRoom = itchat.search_chatrooms(name) for room in iRoom: if room['NickName'] == name: userName = room['UserName'] break itchat.send_msg(context, userName) print("傳送時間:"
+ datetime.now().strftime("%Y-%m-%d %H:%M:%S") + "\n" "傳送到:" + name + "\n" "傳送內容:" + context) print("\n*********************************************************************\n") scheduler.print_jobs() def loginCallback(): print("登入成功") def exitCallback(): print("退出成功") itchat.auto_login(hotReload=True, loginCallback=loginCallback, exitCallback=exitCallback) #itchat.auto_login(hotReload=True, enableCmdQR=True, loginCallback=loginCallback, exitCallback=exitCallback) workbook = xlrd.open_workbook("/home/pi/WeChat/AutoSentChatroom.xlsx") sheet = workbook.sheet_by_name('Chatrooms') iRows = sheet.nrows scheduler = BlockingScheduler() index = 1 for i in range(1, iRows): textList = sheet.row_values(i) name = textList[0] context = textList[2] float_dateTime = textList[1] date_value = xlrd.xldate_as_tuple(float_dateTime, workbook.datemode) date_value = datetime(*date_value[:5]) if datetime.now() > date_value: continue date_value = date_value.strftime('%Y-%m-%d %H:%M:%S') textList[1] = date_value scheduler.add_job(SentChatRoomsMsg, 'date', run_date=date_value, kwargs={"name": name, "context": context}) print("任務" + str(index) + "\n待發送時間:" + date_value + "\n待發送到:" + name + "\n待發送內容:" + context) print("\n*********************************************************************\n") index = index + 1 if index == 1: print("***沒有任務需要執行***") scheduler.start()

準備傳送內容

Excel檔案AutoSentChatroom.xlsx內容如下:
這裡寫圖片描述

執行

在樹莓派中執行

python WeChat.py

即可!

注意事項

1、中間可能會遇到編碼問題,請百度解決!
2、測試發現如果樹莓派沒有桌面系統,啟動微信網頁後立即退出,安裝桌面系統後可正常執行!
3、手機關機或退出微信條件下,微信網頁版失效,無法傳送資訊!
4、如遇itchat相關問題,請自行參考文件或百度!

相關推薦

使用樹莓定時群發訊息

需求強烈 單位領導要求在微信群天天定時彙報個人情況,此處個人情況內容是固定的(這個很重要)。春節過年,哪能天天記著去發微信,而且心理惦記個事也是很難受的,因此決定看看能不能開發程式解決! 主要過程 網上百度了一下,度娘還是很厲害的,立馬給出了微信網頁客

如何利用 Python 爬蟲實現群發新聞早報?(詳細)

![](https://img2020.cnblogs.com/blog/1956326/202005/1956326-20200530125325693-546976500.jpg) # 1. 場景 經常有小夥伴在交流群問我,每天的早報新聞是怎麼獲取的? 其實,早期使用的方案,是利用爬蟲獲取到一些新聞網

使用python定時傳送訊息好友

    以前以為微信沒有介面和python連線,但是最近發現了個庫wechat_sender,然後就稍微學習了下。還不深入,寫了一個簡易的測試程式作為初步進入。     需要用到的庫有 threading, wxpy前者需要用到Timer這個函式,作為定時

python好友定時推送訊息

from __future__ import unicode_literals from threading import Timer from wxpy import * import reques

PHP實現模板訊息傳送指定使用者

收到很多童鞋的諮詢,利用微信公眾號的介面能不能給某個使用者傳送訊息呢,如果說直接傳送呢那還真有些限制,一個是客服訊息介面,但是這個需要使用者在48小時內和公眾號有互動才可以傳送。另外一個就是微信的模板訊息,這個沒有傳送時間限制,但是微信為了防止一些垃圾資料需要使用模板才可以傳送。相信我們平時也收到很

Python爬取天氣資訊並定時傳送好友(異地戀神器)!!

效果 前言 中國天氣網: http://www.weather.com.cn/ 點選右上角的具體的天氣資料 想獲取哪個城市的天氣,就搜尋城市進行切換 這裡以青島為例 可以看到此時url為: http://www.weather.com.cn/weat

Python中使用wxpy定時機器人好友傳送每日一文

效果 前言 愛詞霸每日一文API http://open.iciba.com/dsapi/ 我們要獲取的就是content以及note的內容 實現 安裝庫 開啟cmd,輸入: pip install wxpy 然後再輸入: pip insta

模板訊息 群發 突破 4條限制

微訊號分為服務號和訂閱號(還有企業號內部用),服務號像qq,對方給你發信息,能馬上看到,訂閱號像郵件,你必須自己開啟對方的訂閱號才能看到即時的資訊。所以服務號更像一個普通微信好友,可以線上溝通。但是微信為了控制廣告效果,服務號每月只能發4次訊息,而訂閱號卻可以每天一次訊息。

python傳送訊息好友

咱們就直接上程式碼啦! import itchat import requests import re def login_sendmsg(text): itchat.login() # 只是普通的登陸,並不具有快取的功能 itchat.auto_login(hotReload=T

用python公眾號發訊息

現在通過發微信公眾號資訊來做訊息通知和告警已經很普遍了。最常見的就是運維通過zabbix呼叫shell指令碼給微信發訊息,起到告警的作用。當要傳送的資訊較多,而且希望按照指定格式顯示的好看一點的時候,shell處理起來,個人感覺不太方便。於是我用python重寫

THINKPHP5 模板訊息(非同步群發)推送 跨坑記錄。

上次寫了一篇微信模版訊息推送,但是不知道怎麼非同步推送。導致要等它推送完幾百條才能關閉網頁。 然後請教了大神,和自己摸索,在此記錄。 1、推送頁,推送到另一個檔案處理微信推送,使用fsockopen。一次性推送,不儲存資料庫,有需要自己改。 $data = inp

利用客服訊息和模板訊息實現群發(突破群發介面的上限)

1、關於群發介面和訊息介面 關於群發介面 1.訂閱號每天可以群發訊息一條,服務號每月(自然月)四條的群發許可權。開發者模式下,可以通過高階群發介面,實現更靈活的群發能力。 2.注意 ● 對於認證訂閱號,群發介面每天可成功呼叫1次,此次群發可選擇傳送給全部

小程序可以轉發好友了

效果 src 背景 排行 地圖 更多 友好 號碼 最適   微信小程序又放大招了:小程序頁面可以放置轉發按鈕,分享更流暢。同時開放了微信運動步數、背景音樂播放等更多基礎能力。小程序可以在自己的頁面上放置轉發按鈕,用戶點擊後,即可將喜歡的內容分享給好友或群聊,體驗更加流暢。開

群”發送消息

src block 指定 alt date lec 好友 微信接口 code 在微信群裏面,“刷屏”的行為是被譴責的。那如果小程硬是要做到“刷屏”的話,有什麽辦法嗎? 顯然,靠快速打字是不現實的,用程序來實現才靠譜。 本文介紹如何用程序發送消息到微信群。 參考網頁微信的功能

使用shell腳本監控用戶登陸服務器並發送提示

xxxx printf def 登陸 一個 ifconfig window cond accep 1.需要在/etc/ssh/目錄下面創建一個名為sshrc的文件,執行權限可給可不給,那麽在有人通過ssh遠程登錄這臺服務器的時候,這段腳本就會被執行 #!/bin/bash

小程式分包傳送資料,硬體完成升級

微信小程式分包傳送資料,給微信硬體完成韌體升級 微信硬體升級流程: 1.準備升級韌體包,我們使用的是zip包,實際使用的時候可以放在伺服器下載。 2.掃描ble裝置並連線,向裝置寫入10,進入dfu模式。 3.進入dfu之後藍芽會斷開,需要重新連結,另外,duf模式下,藍芽的

如何公眾號做認證

微信公眾號如何認證 公眾號申請成功後,你僅僅是擁有了公眾號,你還需要去認證你的公眾號,認證了即是告訴你的使用者,你這個號才是官方的,這樣可以讓使用者更相信你,另外公眾號內有很多功能是需要認證後才有的。 ①:《微信訂閱號認證圖文教程》 ②:《微信服務號認證圖文教程》 開通微信商戶支付平臺 當我們的公眾

shell或python呼叫企業傳送訊息(實現報警功能)

shell或python呼叫企業微信傳送訊息(實現報警功能) 官方文件 企業內部開發簡易教程:https://work.weixin.qq.com/api/doc#90000/90003/90487服務端API:https://work.weixin.qq.com/api/doc#90000/90135/

[開發] - 訊息回覆及事件響應

微信平臺的訊息回覆,的關鍵字(及)訊息回覆及關注事件訊息響應, 其不同點如圖:   在weixin4j作者的註釋中,提到微信公眾平臺接受訊息一共有這麼8類: * <p> * Description: 接受訊息分8類,普通訊息(1.文字訊息、2.圖片訊息、3.語音訊

模板訊息---php

微信模板訊息備註 <?php /** * Created by PhpStorm. * Time: 上午 9:46 */ class topapi_sendNewOrderMsg { private $appid = '*****'; pri