天天看点

python3微信企业号 发送图文

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

<code>本例 只适用于企业号,公众号没试,可自行测试,方法差不多。有事找官网开发文档。</code>

<code>#!/usr/bin/env python</code>

<code># -*- coding: utf-8 -*-</code>

<code>import</code> <code>requests</code>

<code>import</code> <code>json</code>

<code>import</code> <code>urllib.request</code>

<code>ID</code><code>=</code><code>"xxxxxxxxxxxx"</code>  

<code>Secret</code><code>=</code><code>"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"</code>

<code>UserID </code><code>=</code> <code>"hequan2011"</code><code>##成员ID列表(消息接收者,多个接收者用'|'分隔,最多支持1000个)。特殊情况:指定为@all,则向关注该企业应用的全部成员发送</code>

<code>PartyID</code><code>=</code><code>17</code>  <code>##部门ID列表,多个接收者用‘|’分隔,最多支持100个。当touser为@all时忽略本参数</code>

<code>AppID </code><code>=</code> <code>0</code>  <code>##应用ID,默认是 企业小助手  企业应用的id,整型。可在应用的设置页面查看</code>

<code>def</code> <code>get_token():  </code><code>##获取TOKEN</code>

<code>    </code><code>gurl </code><code>=</code> <code>"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={}&amp;corpsecret={}"</code><code>.</code><code>format</code><code>(</code><code>ID</code><code>, Secret)</code>

<code>    </code><code>r</code><code>=</code><code>requests.get(gurl)</code>

<code>    </code><code>dict_result</code><code>=</code> <code>(r.json())</code>

<code>    </code><code>return</code> <code>dict_result[</code><code>'access_token'</code><code>]</code>

<code>def</code> <code>get_media_ID(path):  </code><code>##上传到临时素材  图片ID</code>

<code>    </code><code>Gtoken </code><code>=</code> <code>get_token()</code>

<code>    </code><code>img_url </code><code>=</code> <code>"https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token={}&amp;type=image"</code><code>.</code><code>format</code><code>(Gtoken)</code>

<code>    </code><code>files </code><code>=</code> <code>{</code><code>'image'</code><code>: </code><code>open</code><code>(path, </code><code>'rb'</code><code>)}</code>

<code>    </code><code>r </code><code>=</code> <code>requests.post(img_url, files</code><code>=</code><code>files)</code>

<code>    </code><code>re </code><code>=</code> <code>json.loads(r.text)</code>

<code>    </code><code>return</code> <code>re[</code><code>'media_id'</code><code>]</code>

<code>##</code>

<code> </code> 

<code>def</code>  <code>send_text(text):  </code><code>##发送文字</code>

<code>    </code><code>post_data </code><code>=</code> <code>{}</code>

<code>    </code><code>msg_content </code><code>=</code> <code>{}</code>

<code>    </code><code>msg_content[</code><code>'content'</code><code>] </code><code>=</code> <code>text  </code><code>## 消息内容,最长不超过2048个字节</code>

<code>    </code><code>post_data[</code><code>'touser'</code><code>] </code><code>=</code> <code>UserID</code>

<code>    </code><code>post_data[</code><code>'toparty'</code><code>] </code><code>=</code> <code>PartyID</code>

<code>    </code><code>post_data[</code><code>'msgtype'</code><code>] </code><code>=</code> <code>'text'</code>

<code>    </code><code>post_data[</code><code>'agentid'</code><code>] </code><code>=</code> <code>AppID</code>

<code>    </code><code>post_data[</code><code>'text'</code><code>] </code><code>=</code> <code>msg_content</code>

<code>    </code><code>post_data[</code><code>'safe'</code><code>] </code><code>=</code> <code>'0'</code>  <code>#表示是否是保密消息,0表示否,1表示是,默认0</code>

<code>    </code><code>purl1</code><code>=</code><code>"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={}"</code><code>.</code><code>format</code><code>(Gtoken)</code>

<code>    </code><code>json_post_data </code><code>=</code> <code>json.dumps(post_data,</code><code>False</code><code>,</code><code>False</code><code>)</code>

<code>    </code><code>request_post </code><code>=</code> <code>urllib.request.urlopen(purl,json_post_data.encode(encoding</code><code>=</code><code>'UTF8'</code><code>))</code>

<code>    </code><code>return</code> <code>request_post</code>

<code>    </code> 

<code>def</code>  <code>send_tu(path):  </code><code>##发送图片</code>

<code>    </code><code>img_id </code><code>=</code> <code>get_media_ID(path)</code>

<code>    </code><code>post_data1 </code><code>=</code> <code>{}</code>

<code>    </code><code>msg_content1 </code><code>=</code> <code>{}</code>

<code>    </code><code>msg_content1[</code><code>'media_id'</code><code>] </code><code>=</code> <code>img_id</code>

<code>    </code><code>post_data1[</code><code>'touser'</code><code>] </code><code>=</code> <code>UserID</code>

<code>    </code><code>post_data1[</code><code>'toparty'</code><code>] </code><code>=</code> <code>PartyID</code>

<code>    </code><code>post_data1[</code><code>'msgtype'</code><code>] </code><code>=</code> <code>'image'</code>

<code>    </code><code>post_data1[</code><code>'agentid'</code><code>] </code><code>=</code> <code>AppID</code>

<code>    </code><code>post_data1[</code><code>'image'</code><code>] </code><code>=</code> <code>msg_content1</code>

<code>    </code><code>post_data1[</code><code>'safe'</code><code>] </code><code>=</code> <code>'0'</code>

<code>    </code><code>purl2</code><code>=</code><code>"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={}"</code><code>.</code><code>format</code><code>(Gtoken)</code>

<code>    </code><code>json_post_data1 </code><code>=</code> <code>json.dumps(post_data1,</code><code>False</code><code>,</code><code>False</code><code>)</code>

<code>    </code><code>request_post </code><code>=</code> <code>urllib.request.urlopen(purl2,json_post_data1.encode(encoding</code><code>=</code><code>'UTF8'</code><code>))</code>

<code>send_tu(</code><code>"1.png"</code><code>)  </code><code>##图片目录</code>

<code>send_text(</code><code>"123-何全"</code><code>)  </code><code>##文字内容</code>

本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1906922,如需转载请自行联系原作者