{"id":28522,"date":"2024-11-25T15:25:05","date_gmt":"2024-11-25T07:25:05","guid":{"rendered":"https:\/\/fwq.ai\/blog\/28522\/"},"modified":"2024-11-25T15:25:05","modified_gmt":"2024-11-25T07:25:05","slug":"python3%e5%bc%80%e5%8f%91%e5%be%ae%e4%bf%a1%e4%bc%81%e4%b8%9a%e5%8f%b7%e5%8f%91%e9%80%81%e5%9b%be%e6%96%87%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/28522\/","title":{"rendered":"python3\u5f00\u53d1\u5fae\u4fe1\u4f01\u4e1a\u53f7\u53d1\u9001\u56fe\u6587\u65b9\u6cd5"},"content":{"rendered":"<p>\u8fd9\u7bc7\u6587\u7ae0\u4ecb\u7ecdpython3\u5f00\u53d1\u5fae\u4fe1\u4f01\u4e1a\u53f7\u53d1\u9001\u56fe\u6587\u65b9\u6cd5<\/p>\n<pre>\u672c\u4f8b&nbsp;\u53ea\u9002\u7528\u4e8e\u4f01\u4e1a\u53f7\uff0c\u516c\u4f17\u53f7\u6ca1\u8bd5\uff0c\u53ef\u81ea\u884c\u6d4b\u8bd5\uff0c\u65b9\u6cd5\u5dee\u4e0d\u591a\u3002\u6709\u4e8b\u627e\u5b98\u7f51\u5f00\u53d1\u6587\u6863\u3002\r\n&nbsp;\r\n#!\/usr\/bin\/env&nbsp;python\r\n#&nbsp;-*-&nbsp;coding:&nbsp;utf-8&nbsp;-*-\r\nimport&nbsp;requests\r\nimport&nbsp;json\r\nimport&nbsp;urllib.request\r\n&nbsp;\r\nID=\"xxxxxxxxxxxx\"&nbsp;&nbsp;\r\nSecret=\"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\"\r\n&nbsp;\r\nUserID&nbsp;=&nbsp;\"hequan2011\"##\u6210\u5458ID\u5217\u8868\uff08\u6d88\u606f\u63a5\u6536\u8005\uff0c\u591a\u4e2a\u63a5\u6536\u8005\u7528'|'\u5206\u9694\uff0c\u6700\u591a\u652f\u63011000\u4e2a\uff09\u3002\u7279\u6b8a\u60c5\u51b5\uff1a\u6307\u5b9a\u4e3a@all\uff0c\u5219\u5411\u5173\u6ce8\u8be5\u4f01\u4e1a\u5e94\u7528\u7684\u5168\u90e8\u6210\u5458\u53d1\u9001\r\nPartyID=17&nbsp;&nbsp;##\u90e8\u95e8ID\u5217\u8868\uff0c\u591a\u4e2a\u63a5\u6536\u8005\u7528\u2018|\u2019\u5206\u9694\uff0c\u6700\u591a\u652f\u6301100\u4e2a\u3002\u5f53touser\u4e3a@all\u65f6\u5ffd\u7565\u672c\u53c2\u6570\r\nAppID&nbsp;=&nbsp;0&nbsp;&nbsp;##\u5e94\u7528ID\uff0c\u9ed8\u8ba4\u662f&nbsp;\u4f01\u4e1a\u5c0f\u52a9\u624b&nbsp;&nbsp;\u4f01\u4e1a\u5e94\u7528\u7684id\uff0c\u6574\u578b\u3002\u53ef\u5728\u5e94\u7528\u7684\u8bbe\u7f6e\u9875\u9762\u67e5\u770b\r\n&nbsp;\r\n&nbsp;\r\n&nbsp;\r\ndef&nbsp;get_token():&nbsp;&nbsp;##\u83b7\u53d6TOKEN\r\n&nbsp;&nbsp;&nbsp;&nbsp;gurl&nbsp;=&nbsp;\"https:\/\/qyapi.weixin.qq.com\/cgi-bin\/gettoken?corpid={}&amp;amp;corpsecret={}\".format(ID,&nbsp;Secret)\r\n&nbsp;&nbsp;&nbsp;&nbsp;r=requests.get(gurl)\r\n&nbsp;&nbsp;&nbsp;&nbsp;dict_result=&nbsp;(r.json())\r\n&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;dict_result['access_token']\r\ndef&nbsp;get_media_ID(path):&nbsp;&nbsp;##\u4e0a\u4f20\u5230\u4e34\u65f6\u7d20\u6750&nbsp;&nbsp;\u56fe\u7247ID\r\n&nbsp;&nbsp;&nbsp;&nbsp;Gtoken&nbsp;=&nbsp;get_token()\r\n&nbsp;&nbsp;&nbsp;&nbsp;img_url&nbsp;=&nbsp;\"https:\/\/qyapi.weixin.qq.com\/cgi-bin\/media\/upload?access_token={}&amp;amp;type=image\".format(Gtoken)\r\n&nbsp;&nbsp;&nbsp;&nbsp;files&nbsp;=&nbsp;{'image':&nbsp;open(path,&nbsp;'rb')}\r\n&nbsp;&nbsp;&nbsp;&nbsp;r&nbsp;=&nbsp;requests.post(img_url,&nbsp;files=files)\r\n&nbsp;&nbsp;&nbsp;&nbsp;re&nbsp;=&nbsp;json.loads(r.text)\r\n&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;re['media_id']\r\n##\r\n&nbsp;\r\n&nbsp;\r\n&nbsp;&nbsp;\r\ndef&nbsp;&nbsp;send_text(text):&nbsp;&nbsp;##\u53d1\u9001\u6587\u5b57\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data&nbsp;=&nbsp;{}\r\n&nbsp;&nbsp;&nbsp;&nbsp;msg_content&nbsp;=&nbsp;{}\r\n&nbsp;&nbsp;&nbsp;&nbsp;msg_content['content']&nbsp;=&nbsp;text&nbsp;&nbsp;##&nbsp;\u6d88\u606f\u5185\u5bb9\uff0c\u6700\u957f\u4e0d\u8d85\u8fc72048\u4e2a\u5b57\u8282\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['touser']&nbsp;=&nbsp;UserID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['toparty']&nbsp;=&nbsp;PartyID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['msgtype']&nbsp;=&nbsp;'text'\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['agentid']&nbsp;=&nbsp;AppID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['text']&nbsp;=&nbsp;msg_content\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data['safe']&nbsp;=&nbsp;'0'&nbsp;&nbsp;#\u8868\u793a\u662f\u5426\u662f\u4fdd\u5bc6\u6d88\u606f\uff0c0\u8868\u793a\u5426\uff0c1\u8868\u793a\u662f\uff0c\u9ed8\u8ba40\r\n&nbsp;&nbsp;&nbsp;&nbsp;Gtoken&nbsp;=&nbsp;get_token()\r\n&nbsp;&nbsp;&nbsp;&nbsp;purl1=\"https:\/\/qyapi.weixin.qq.com\/cgi-bin\/message\/send?access_token={}\".format(Gtoken)\r\n&nbsp;&nbsp;&nbsp;&nbsp;json_post_data&nbsp;=&nbsp;json.dumps(post_data,False,False)\r\n&nbsp;&nbsp;&nbsp;&nbsp;request_post&nbsp;=&nbsp;urllib.request.urlopen(purl,json_post_data.encode(encoding='UTF8'))\r\n&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;request_post\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\ndef&nbsp;&nbsp;send_tu(path):&nbsp;&nbsp;##\u53d1\u9001\u56fe\u7247\r\n&nbsp;&nbsp;&nbsp;&nbsp;img_id&nbsp;=&nbsp;get_media_ID(path)\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1&nbsp;=&nbsp;{}\r\n&nbsp;&nbsp;&nbsp;&nbsp;msg_content1&nbsp;=&nbsp;{}\r\n&nbsp;&nbsp;&nbsp;&nbsp;msg_content1['media_id']&nbsp;=&nbsp;img_id\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['touser']&nbsp;=&nbsp;UserID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['toparty']&nbsp;=&nbsp;PartyID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['msgtype']&nbsp;=&nbsp;'image'\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['agentid']&nbsp;=&nbsp;AppID\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['image']&nbsp;=&nbsp;msg_content1\r\n&nbsp;&nbsp;&nbsp;&nbsp;post_data1['safe']&nbsp;=&nbsp;'0'\r\n&nbsp;&nbsp;&nbsp;&nbsp;Gtoken&nbsp;=&nbsp;get_token()\r\n&nbsp;&nbsp;&nbsp;&nbsp;purl2=\"https:\/\/qyapi.weixin.qq.com\/cgi-bin\/message\/send?access_token={}\".format(Gtoken)\r\n&nbsp;&nbsp;&nbsp;&nbsp;json_post_data1&nbsp;=&nbsp;json.dumps(post_data1,False,False)\r\n&nbsp;&nbsp;&nbsp;&nbsp;request_post&nbsp;=&nbsp;urllib.request.urlopen(purl2,json_post_data1.encode(encoding='UTF8'))\r\n&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;request_post\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\r\nsend_tu(\"1.png\")&nbsp;&nbsp;##\u56fe\u7247\u76ee\u5f55\r\nsend_text(\"123-\u4f55\u5168\")&nbsp;&nbsp;##\u6587\u5b57\u5185\u5bb9<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u4ee5\u4e0a\u5c31\u662fpython3\u5f00\u53d1\u5fae\u4fe1\u4f01\u4e1a\u53f7\u53d1\u9001\u56fe\u6587\u65b9\u6cd5\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8fd9\u7bc7\u6587\u7ae0\u4ecb\u7ecdpython3\u5f00\u53d1\u5fae\u4fe1\u4f01\u4e1a\u53f7\u53d1\u9001\u56fe\u6587\u65b9\u6cd5 \u672c\u4f8b&nbsp;\u53ea\u9002\u7528\u4e8e\u4f01\u4e1a\u53f7\uff0c\u516c\u4f17\u53f7\u6ca1\u8bd5\uff0c\u53ef\u81ea\u884c\u6d4b\u8bd5\uff0c\u65b9\u6cd5\u5dee\u4e0d\u591a\u3002\u6709\u4e8b\u627e\u5b98\u7f51\u5f00\u53d1\u6587\u6863\u3002 &nbsp; #!\/usr\/bin\/env&nbsp;python #&nbsp;-*-&nbsp;coding:&nbsp;utf-8&nbsp;-*- import&nbsp;requests import&nbsp;json import&nbsp;urllib.request &nbsp; ID=&#8221;xxxxxxxxxxxx&#8221;&nbsp;&nbsp; Secret=&#8221;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&#8221; &nbsp; UserID&nbsp;=&nbsp;&#8220;hequan2011&#8243;##\u6210\u5458ID\u5217\u8868\uff08\u6d88\u606f\u63a5\u6536\u8005\uff0c\u591a\u4e2a\u63a5\u6536\u8005\u7528&#8217;|&#8217;\u5206\u9694\uff0c\u6700\u591a\u652f\u63011000\u4e2a\uff09\u3002\u7279\u6b8a\u60c5\u51b5\uff1a\u6307\u5b9a\u4e3a@all\uff0c\u5219\u5411\u5173\u6ce8\u8be5\u4f01\u4e1a\u5e94\u7528\u7684\u5168\u90e8\u6210\u5458\u53d1\u9001 PartyID=17&nbsp;&nbsp;##\u90e8\u95e8ID\u5217\u8868\uff0c\u591a\u4e2a\u63a5\u6536\u8005\u7528\u2018|\u2019\u5206\u9694\uff0c\u6700\u591a\u652f\u6301100\u4e2a\u3002\u5f53touser\u4e3a@all\u65f6\u5ffd\u7565\u672c\u53c2\u6570 AppID&nbsp;=&nbsp;0&nbsp;&nbsp;##\u5e94\u7528ID\uff0c\u9ed8\u8ba4\u662f&nbsp;\u4f01\u4e1a\u5c0f\u52a9\u624b&nbsp;&nbsp;\u4f01\u4e1a\u5e94\u7528\u7684id\uff0c\u6574\u578b\u3002\u53ef\u5728\u5e94\u7528\u7684\u8bbe\u7f6e\u9875\u9762\u67e5\u770b &nbsp; &nbsp; &nbsp; def&nbsp;get_token():&nbsp;&nbsp;##\u83b7\u53d6TOKEN &nbsp;&nbsp;&nbsp;&nbsp;gurl&nbsp;=&nbsp;&#8220;https:\/\/qyapi.weixin.qq.com\/cgi-bin\/gettoken?corpid={}&amp;amp;corpsecret={}&#8221;.format(ID,&nbsp;Secret) &nbsp;&nbsp;&nbsp;&nbsp;r=requests.get(gurl) &nbsp;&nbsp;&nbsp;&nbsp;dict_result=&nbsp;(r.json()) &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;dict_result[&#8216;access_token&#8217;] def&nbsp;get_media_ID(path):&nbsp;&nbsp;##\u4e0a\u4f20\u5230\u4e34\u65f6\u7d20\u6750&nbsp;&nbsp;\u56fe\u7247ID &nbsp;&nbsp;&nbsp;&nbsp;Gtoken&nbsp;=&nbsp;get_token() &nbsp;&nbsp;&nbsp;&nbsp;img_url&nbsp;=&nbsp;&#8220;https:\/\/qyapi.weixin.qq.com\/cgi-bin\/media\/upload?access_token={}&amp;amp;type=image&#8221;.format(Gtoken) &nbsp;&nbsp;&nbsp;&nbsp;files&nbsp;=&nbsp;{&#8216;image&#8217;:&nbsp;open(path,&nbsp;&#8216;rb&#8217;)} &nbsp;&nbsp;&nbsp;&nbsp;r&nbsp;=&nbsp;requests.post(img_url,&nbsp;files=files) &nbsp;&nbsp;&nbsp;&nbsp;re&nbsp;=&nbsp;json.loads(r.text) &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;re[&#8216;media_id&#8217;] ## &nbsp; &nbsp; &nbsp;&nbsp; def&nbsp;&nbsp;send_text(text):&nbsp;&nbsp;##\u53d1\u9001\u6587\u5b57 &nbsp;&nbsp;&nbsp;&nbsp;post_data&nbsp;=&nbsp;{} &nbsp;&nbsp;&nbsp;&nbsp;msg_content&nbsp;=&nbsp;{} &nbsp;&nbsp;&nbsp;&nbsp;msg_content[&#8216;content&#8217;]&nbsp;=&nbsp;text&nbsp;&nbsp;##&nbsp;\u6d88\u606f\u5185\u5bb9\uff0c\u6700\u957f\u4e0d\u8d85\u8fc72048\u4e2a\u5b57\u8282 &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;touser&#8217;]&nbsp;=&nbsp;UserID &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;toparty&#8217;]&nbsp;=&nbsp;PartyID &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;msgtype&#8217;]&nbsp;=&nbsp;&#8216;text&#8217; &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;agentid&#8217;]&nbsp;=&nbsp;AppID &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;text&#8217;]&nbsp;=&nbsp;msg_content &nbsp;&nbsp;&nbsp;&nbsp;post_data[&#8216;safe&#8217;]&nbsp;=&nbsp;&#8216;0&#8217;&nbsp;&nbsp;#\u8868\u793a\u662f\u5426\u662f\u4fdd\u5bc6\u6d88\u606f\uff0c0\u8868\u793a\u5426\uff0c1\u8868\u793a\u662f\uff0c\u9ed8\u8ba40 &nbsp;&nbsp;&nbsp;&nbsp;Gtoken&nbsp;=&nbsp;get_token() &nbsp;&nbsp;&nbsp;&nbsp;purl1=&#8221;https:\/\/qyapi.weixin.qq.com\/cgi-bin\/message\/send?access_token={}&#8221;.format(Gtoken) &nbsp;&nbsp;&nbsp;&nbsp;json_post_data&nbsp;=&nbsp;json.dumps(post_data,False,False) &nbsp;&nbsp;&nbsp;&nbsp;request_post&nbsp;=&nbsp;urllib.request.urlopen(purl,json_post_data.encode(encoding=&#8217;UTF8&#8242;)) &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;request_post &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; def&nbsp;&nbsp;send_tu(path):&nbsp;&nbsp;##\u53d1\u9001\u56fe\u7247 &nbsp;&nbsp;&nbsp;&nbsp;img_id&nbsp;=&nbsp;get_media_ID(path) &nbsp;&nbsp;&nbsp;&nbsp;post_data1&nbsp;=&nbsp;{} [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-28522","post","type-post","status-publish","format-standard","hentry","category-19"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/28522","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=28522"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/28522\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=28522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=28522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=28522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}