GVKun编程网logo

python实现微信发送服务器监控报警消息代码实现(python微信接口发送消息)

12

在这里,我们将给大家分享关于python实现微信发送服务器监控报警消息代码实现的知识,让您更了解python微信接口发送消息的本质,同时也会涉及到如何更有效地30行python代码实现微信“拍一拍”、

在这里,我们将给大家分享关于python实现微信发送服务器监控报警消息代码实现的知识,让您更了解python微信接口发送消息的本质,同时也会涉及到如何更有效地30行python代码实现微信“拍一拍”、5行代码实现微信模版消息推送,java实现微信推送、C++ 实现微信 WeChat 网页接口推送股票报警消息、Python 10 行代码实现短信发送的内容。

本文目录一览:

python实现微信发送服务器监控报警消息代码实现(python微信接口发送消息)

python实现微信发送服务器监控报警消息代码实现(python微信接口发送消息)

这篇文章主要介绍了python3.8 微信发送服务器监控报警消息代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

python版本

>>> import sys
>>> sys.version
''3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)]''

代码

import urllib.request,urllib.error,json
import sys

class WeChat(object):
   __token_id = ''''
   # init attribute
   def __init__(self,url):
       self.__url = url.rstrip(''/'')
       self.__corpid = ''[企业号的标识]''
       self.__secret = ''[管理组凭证密钥]''

   # Get TokenID
   def authID(self):
       params = {''corpid'':self.__corpid, ''corpsecret'':self.__secret}
       data = urllib.parse.urlencode(params)

       content = self.getToken(data)

       try:
           self.__token_id = content[''access_token'']
           # print content[''access_token'']
       except KeyError:
           raise KeyError

   # Establish a connection
   def getToken(self,data,url_prefix=''/''):
       url = self.__url + url_prefix + ''gettoken?''
       try:
           response = urllib.request.Request(url + data)
       except KeyError:
           raise KeyError
       result = urllib.request.urlopen(response)
       content = json.loads(result.read())
       return content

   # Get sendmessage url
   def postData(self,data,url_prefix=''/''):
       url = self.__url + url_prefix + ''message/send?access_token=%s'' % self.__token_id
       request = urllib.request.Request(url,data.encode())
       print(url)
       print(data)
       try:
           result = urllib.request.urlopen(request)
       except urllib.error.HTTPError as e:
           if hasattr(e,''reason''):
               print(''reason'',e.reason)
           elif hasattr(e,''code''):
               print(''code'',e.code)
           return 0
       else:
           content = json.loads(result.read())
           result.close()
       return content

   # send message
   def sendMessage(self,touser,message):

       self.authID()

       data = json.dumps({
           ''touser'':"[企业号中的用户帐号]",
           ''toparty'':"[企业号中的部门id]",
           ''msgtype'':"[消息类型]",
           ''agentid'':"[企业号中的应用id]",
           ''text'':{
               ''content'':message
          },
           ''safe'':"0"
      },ensure_ascii=False)

       response = self.postData(data)
       print(response)


if __name__ == ''__main__'':
   a = WeChat(''https://qyapi.weixin.qq.com/cgi-bin'')
   a.sendMessage(sys.argv[1],sys.argv[3])

效果

30行python代码实现微信“拍一拍”

30行python代码实现微信“拍一拍”

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

一腔热血勤珍重,洒去犹能化碧涛。


最近微信“拍一拍”火遍了各大微信群,并迅速占据了热搜话题榜

于是我突发奇想,决定用pyhton自动实现微信“拍一拍”,没想到还真给搞成功了,整个过程才用了30行代码,下面给大家介绍一下具体实现步骤:

本文亮点

用appium模拟操控手机并截图,通过图像识别定位好友头像坐标,最后用appium模拟双击头像坐标,以此实现“拍一拍”功能。

效果展示:




具体步骤:

一、用appium操控手机
关于appium的安装及使用方法,之前已经写过很多了,这里就不再赘述了,直接进入操作步骤
1.用python打开微信,代码如下
desired_caps = {"platformName": "Android", "deviceName": "VOG-AL00", "appPackage": "com.tencent.mm", "appActivity": ".ui.LauncherUI", "noReset": "true", "fullReset": "false"}server = ''http://localhost:4723/wd/hub''driver = webdriver.Remote(server, desired_caps)


难点在于desired_cap参数的配置,这里再给大家介绍一下:

  • platformName:表示设备操作系统
    deviceName:表示设备名称
    apppackage:表示app程序包名
    appActivity:表示app入口Activity名。


将手机连接电脑,打开开发者模式,运行此程序,就会发现手机自动打开了微信。

二、模拟双击头像
1.原理介绍
我们都知道,微信“拍一拍”是通过双击好友头像实现的,如下图所示:
想要双击头像,就要先获得头像在屏幕中的坐标
这里给大家介绍1个函数:


基于Python-opencv2的目标定位模块:Aircv
使用其find_template函数,可以查找目标图像在原始图像中的坐标范围,用法如下:


def matchImg(imgsrc, imgobj, confidencevalue=0.7): imsrc = ac.imread(imgsrc) imgobj = ac.imread(imgobj) match_result = ac.find_template(imsrc, imgobj,confidencevalue) return match_result
其中imgsrc=原始图片路径,imgobj=待查找的目标图片路径。
如果未找到,则match_result=None;
若找到,则返回如下数据:
{''result'':(570.0, 2771.0), ''rectangle'': ((30, 1601), (30, 3941), (1110, 1601), (1110,3941)), ''confidence'': 0.999999463558197}

其中:


  • result为匹配图片在原始图片上的中心坐标点,也就是我们要找的点击点;

  • rectangle为匹配图片在原始图像上四边形的坐标;

  • confidence为匹配相似率。



2.那么该如何在程序中自动获取获取好友头像坐标呢?
在客户端appium中,可以确定头像在屏幕中的像素为140×140
我们可以先把好友头像保存,再用ps把头像改为此像素。
然后在程序中创建1个while循环,在第一步完成的基础上,手动进入好友聊天框(其实也可以通过识别好友头像自动进入)
通过appium对手机屏幕截图并命名为src.png,将其和头像路径(obj.png)导入1中的检测函数:
driver.save_screenshot(''src.png'')imgsrc=''src.png''imgobj=''obj.png''match_result=matchImg(imgsrc, imgobj)
若返回None,则说明聊天窗口没检测到好友头像,继续循环;
若检测到头像坐标 ,则解析返回的坐标数据,用for循环模拟双击坐标位置:
if match_result is not None: result = [match_result[''rectangle''][0], match_result[''rectangle''][3]] for i in range(2): driver.tap(result,100) print(''拍成功'')else: print(''没找到头像'')
这样就大功告成了
是不是很简单?
小结: 本文介绍了用python模拟微信“拍一拍”的主要思路,感兴趣的可以接着做下去,实现一些有趣的功能,例如,监控微信群聊,谁发消息就“拍”谁一下,或者把群聊用户挨个拍一遍,都挺有意思的。
本文所述的代码及数据已上传至【python的爬虫与数据分析之路】后台,请输入拍一拍获取。

------------------- End -------------------

往期精彩文章推荐:

  • 手把手用Python教你如何发现隐藏wifi

  • 手把手教你用Python做个可视化的“剪刀石头布”小游戏

  • 手把手教你使用Python库打造一款简易黑客工具

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两个您使用过的Python库~~

本文分享自微信公众号 - Python爬虫与数据挖掘(crawler_python)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

5行代码实现微信模版消息推送,java实现微信推送

5行代码实现微信模版消息推送,java实现微信推送

今天来带大家学习下微信模版消息推送。

先看效果图:

核心代码只有下面几行,即可轻松实现微信模版消息推送

//1,配置

WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();

wxStorage.setAppId("wx77bb69292323a000");

wxStorage.setSecret("29bd368145806115ad6820133e62806e");

WxMpService wxMpService = new WxMpServiceImpl();

wxMpService.setWxMpConfigStorage(wxStorage);

//2,推送消息

WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()

.toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的用户openid

.templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id

.url("https://30paotui.com/")//点击模版消息要访问的网址

.build();

try {

wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);

} catch (Exception e) {

System.out.println("推送失败:" + e.getMessage());

}

所用知识点

1, springboot实现java后台2,微信测试账号的申请3,微信模版推送的配置接下来就带领大家来一步步实现微信模版消息推送。一,springboot创建java后台

至于springboot怎么创建java后台,我这里就不再唠叨了,大家百度一下,一大堆的文章。这里只需要重点讲解下以下几点。

1,在pom.xml文件里引入下面类库<!--微信模版消息推送三方sdk-->

<dependency>

<groupId>com.github.binarywang</groupId>

<artifactId>weixin-java-mp</artifactId>

<version>3.3.0</version>

</dependency>

2,写一个推送的controllerpackage com.qiushi.wxpush;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RestController;

import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage;

import me.chanjar.weixin.mp.api.WxMpService;

import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;

import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;

/**

* Created by qcl on 2019-03-28

* 微信:2501902696

* desc: 模版消息推送模拟

*/

@RestController

public class PushController {

/*

* 微信测试账号推送

* */

@GetMapping("/push")

public void push() {

//1,配置

WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();

wxStorage.setAppId("wx77bb69292323a000");

wxStorage.setSecret("29bd368145806115ad6820133e62806e");

WxMpService wxMpService = new WxMpServiceImpl();

wxMpService.setWxMpConfigStorage(wxStorage);

//2,推送消息

WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()

.toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的用户openid

.templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id

.url("https://30paotui.com/")//点击模版消息要访问的网址

.build();

//3,如果是正式版发送模版消息,这里需要配置你的信息

// templateMessage.addData(new WxMpTemplateData("name", "value", "#FF00FF"));

// templateMessage.addData(new WxMpTemplateData(name2, value2, color2));

try {

wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);

} catch (Exception e) {

System.out.println("推送失败:" + e.getMessage());

e.printstacktrace();

}

}

}

二,接下来就来重点讲讲我们如何注册微信测试账号,并实现推送功能。

正常我们企业开发,实现微信模版消息推送,必须要有微信公众号,备案的网址,并且最麻烦的一点是要获取到用户的openid,作为个人,这些条件基本上都不具备。所以今天就来带大家注册微信开发测试账号,来轻松实现微信模版消息推送。

1,微信扫码登录下面网址https://mp.weixin.qq.com/debug/cgi-bin/sandBox?t=sandBox/login扫码登录成功后,就会给我们生成微信公号的appid和appsecret

2,微信扫码关注 测试号二维码,微信给我们返回我们的openid,这个openid在推送时特别重要。因为你推送肯定要知道推送给 谁啊,就比如你打电话,肯定要知道用户的电话号码吧。这个openid就是我们要推送给那个用户的唯一标示。

3,拿到这些以后,我们就可以去实现微信推送了。推送的代码就只有下面这么点。//1,配置

WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();

wxStorage.setAppId("wx77bb69292323a000");//appid

wxStorage.setSecret("29bd368145806115ad6820133e62806e");//appsecret

WxMpService wxMpService = new WxMpServiceImpl();

wxMpService.setWxMpConfigStorage(wxStorage);

//2,推送消息

WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()

.toUser("o5kho6DgC7SDry8zCmXuvHJGvrgI")//要推送的用户openid

.templateId("Tpln-Eue2obJ0B-8JNkgkiRJaDMPgVeIgGxna982xrg")//模版id

.url("https://30paotui.com/")//点击模版消息要访问的网址

.build();

//3,如果是正式版发送模版消息,这里需要配置你的信息

// templateMessage.addData(new WxMpTemplateData("name", "value", "#FF00FF"));

// templateMessage.addData(new WxMpTemplateData(name2, value2, color2));

//发起推送

try {

String msg = wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);

System.out.println("推送成功:" + msg);

} catch (Exception e) {

System.out.println("推送失败:" + e.getMessage());

e.printstacktrace();

}

三,推送测试

代码都完成后,我们就可以来测试推送了。测试我们这个分两种

1,java的单元测试2,运行springboot,通过get请求来触发推送单元测试

package com.qiushi.wxpush;

import org.junit.Test;

import org.junit.runner.RunWith;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBoottest;

import org.springframework.test.context.junit4.springrunner;

import static org.junit.Assert.*;

/**

* Created by qcl on 2019-03-28

* 微信:2501902696

* desc:测试用例

*/

@RunWith(springrunner.class)

@SpringBoottest

public class PushControllerTest {

@Autowired

PushController pushController;

@Test

public void push() {

pushController.push();

}

}

单元测试其实很简单,我们只需要点击箭头所指的绿色按钮,即可运行单元测试,运行通过后就可以看到发送消息成功了。

java单元测试

log里可以看出我们是10:46发起推送的,看下图我们微信接受到的推送消息也是10:46

运行springboot,通过get请求来触发推送

这个就更简单了,我们启动springboot项目,然后调用get请求:

image.png

可以看到我们也推送成功了。

到这里我们就轻松通过简单几行代码实现了微信模版消息推送的功能了。

我们在企业生产环境时,实现这个功能,步骤和这里是一样的。代码也和这里差不多,只不过多了一个获取用户openid的步骤,这个步骤微信要求比较严格,必须要有备案的网址作为回调,今天就不给大家深入讲解了,后期我会专门写一篇获取微信用户openid的文章出来。

视频讲解:https://edu.csdn.net/course/detail/23750

编程小石头,为分享干货而生!据说,每个年轻上进,颜值又高的互联网人都关注我了

C++ 实现微信 WeChat 网页接口推送股票报警消息

C++ 实现微信 WeChat 网页接口推送股票报警消息

QStockView 微信推送股票报警

1. 功能简介

最近很多用户反馈,软件只能在电脑上使用,不能在手机上使用。所以增加了微信推送报警的功能,电脑端的报警提示消息可以通过微信同步发送到手机微信。这样即可以保证电脑的强大运算性能,也可以使用手机微信的方便快捷。微信可以发送到微信用户,微信群,文件传输助手,微信公众号等。

2. 操作配置

(1)点击配置按钮,弹出配置界面

 

 

(2) 扫描二维码登录你的微信,如果二维码过期,点击重新登录

 

 

(3) 登录成功之后,选择要发送的微信用户、文件传输助手、微信群、公众号等。勾选是否推送到微信复选框,表示是否要发送到微信,修改好之后点击保存按钮。默认情况是发给文件传输助手,然后点击测试发送。看是否能够发送成功。心跳发送按钮是每隔一分钟发送一条时间消息,让你知道通讯连接正常,测试用的。没有实际的作用。由于微信的限制,无法自己发给自己,发给文件传输助手、微信群、微信公众号,自己只能显示消息,手机端不会出现屏幕消息提示。所以最好有两个手机账号,一个登陆发送,一个接收消息。因为微信同时只能登录一个网页端或者 window 的客户端,所以微信登录了 QStcokView 之后,不能再去登录网页或者客户端,否则会挤掉登录,导致发送失败。

 

 

(4) 在手机端查看微信,可以查看到报警推送消息,电脑客户端的报警消息会同步推送到手机指定用户。

 

(5) 如上图所示,为了避免报警消息打扰到用户,当用户不想接收报警消息时,登录发送报警的用户或者接受报警消息的用户,都可以在手机微信上通过反向控制命令:QStockView:Stop(或者 QStockView: 停止)停止接收报警消息,也可以通过反向控制命令 QStockView:Start(或者 QStockView: 开始)来开始接收报警消息;QStockView 是软件名称,也是软件公众号。冒号后面就是命令。不区分大小写,中间不能有空格,否则命令无效。发送命令成功之后,会返回一个通知消息。表示命令发送成功。

3. 下载方式

股票智能分析监控软件百度云下载地址:

下载链接:https://pan.baidu.com/s/1swkQzCIKI3g3ObcebgpIDg

提取码:mc8l

 

关注微信公众号获取软件使用视频介绍和最新软件版本。

微信公众号:QStockView

 

 

 

 

 

原文出处:https://www.cnblogs.com/bclshuai/p/11379545.html

Python 10 行代码实现短信发送

Python 10 行代码实现短信发送

阅读文本大概需要 2 分钟。

最近工作上有个需求,当爬虫程序遇到异常的时候,需要通知相应的人员进行修复。如果是国外可能是通过邮件的方式来通知,但国内除了万年不变的 qq 邮箱,大部分人都不会去再申请其他的账号,qq 邮箱也是闲的蛋疼的时候才会瞄一眼。你还记得上次看邮箱的内容是什么时候吗?

所以在国内最好的通知方式是通过手机短信,今天就教大家利用 python 10 行代码实现短信发送。

Twilio

短信代理服务已经有非常多成熟的方案,比如国内的阿里云。这次我介绍的是国外的一个代理商「Twilio」,使用邮箱注册即送 15 美金。而发送一条国内的短信,目前的价格是 0.028 美金。所以一个账号可以发送 500 条短信,每天发送一条都可以使用一年多的时间。

网站地址:https://www.twilio.com/。

注册好账号点击 Quickstarts 就可以看到官方提供的文档。

根据官方文档你就可以编写一个自己的案例。

程序代码

程序代码就 10 行,非常的简单。首先你需要安装下 twilio 库,然后你需要改下对应你的 account_sid、auth_token、官方提供的号码 from_ 和你要发送到的号码 to,以及你要发送的内容 body。

这些信息在你的个人中心都可以查看到。

把相应的信息填写完整,运行程序即可发送。

本文首发于公众号「痴海」,后台回复「1024」即可获取最新编程资源。

比如这样的:史上最全 Python 学习资料,PDF 电子书大合集
痴海

关于python实现微信发送服务器监控报警消息代码实现python微信接口发送消息的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于30行python代码实现微信“拍一拍”、5行代码实现微信模版消息推送,java实现微信推送、C++ 实现微信 WeChat 网页接口推送股票报警消息、Python 10 行代码实现短信发送等相关内容,可以在本站寻找。

本文标签:

上一篇微信小程序开发填坑指南V1(微信小程序开发的坑)

下一篇Jeewx捷微 , 免费微信公众账号管家系统发布,采用JAVA语言(捷信微信公众号)