亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

輕松實(shí)現(xiàn)python搭建微信公眾平臺(tái)

系統(tǒng) 1831 0

本文主要是一步一步教大家如何利用python搭建微信公眾平臺(tái),有興趣的朋友可以參考一下

使用的工具,python 新浪SAE平臺(tái),微信的公眾平臺(tái)

你需要先在微信的公眾平臺(tái)與新浪SAE平臺(tái)上各種注冊(cè),微信平臺(tái)注冊(cè)的時(shí)候需要你拍張手持身份證的照片,還有幾天的審核期

微信公眾平臺(tái):http://mp.weixin.qq.com

新浪SAE:http://sae.sina.com.cn/

等待微信公眾審核通過后,登錄公眾平臺(tái)后,點(diǎn)擊高級(jí)功能。將會(huì)看到需要提供一個(gè)接入信息:

輕松實(shí)現(xiàn)python搭建微信公眾平臺(tái)_第1張圖片

微信接口配置

那么我們需要一個(gè)網(wǎng)址作為接口(這時(shí)就需要SAE上搭建Python的一個(gè)應(yīng)用),Token呢,就是相當(dāng)于我們和微信之間約定的“密碼”,這里可以隨便填寫英文或者數(shù)字,但實(shí)測(cè)輸入純數(shù)字有時(shí)會(huì)有問題,所以還是字符串比較靠譜。

第一步, 在SAE上搭建python的應(yīng)用,在下圖的應(yīng)用里選擇python應(yīng)用。

輕松實(shí)現(xiàn)python搭建微信公眾平臺(tái)_第2張圖片

?填好二級(jí)域名和應(yīng)用名稱等,選擇好語言。這里我們使用Python開發(fā)選擇web應(yīng)用。創(chuàng)建好應(yīng)用之后,在代碼管理中創(chuàng)建一個(gè)新的版本。而后我們可以選擇編輯代碼。能夠?qū)崿F(xiàn)在線編輯,根本用不著配置本地環(huán)境,SVN等等。當(dāng)然像這種輕量級(jí)的應(yīng)用在線編輯器就可以了,SVN的話還不如在線編輯好用

第二步, 編寫index.wsgi

因?yàn)槲覀兪褂玫氖莣eb.py框架,因?yàn)槠淞己玫膞ml解析。

首先編寫config.yaml

            
name: yangyanxing
version: 1
 
libraries:
- name: webpy 
 version: "0.36"
 
- name: lxml
 version: "2.3.4"
 
...

          

注意嚴(yán)格的縮進(jìn),差一個(gè)空格你就廢了!而且調(diào)試的時(shí)候很不好發(fā)現(xiàn)問題。。。

接著我們繼續(xù)編寫index.wsgi

            
# coding: UTF-8
import os
 
import sae
import web
 
from weixinInterface import WeixinInterface
 
urls = (
'/weixin','WeixinInterface'
)
 
app_root = os.path.dirname(__file__)
templates_root = os.path.join(app_root, 'templates')
render = web.template.render(templates_root)
 
app = web.application(urls, globals()).wsgifunc()  
application = sae.create_wsgi_app(app)

          

簡(jiǎn)單解釋一下,

from weixinInterface import WeixinInterface
這里我們需要再創(chuàng)建一個(gè)weixinInterface的py文件,你也可以將這個(gè)類寫在index.wsgi文件中,只是這樣看起來會(huì)亂亂的

新建一個(gè)weixinInterface.py文件,注意大小寫,寫入以下代碼

            
# -*- coding: utf-8 -*-
import hashlib
import web
import lxml
import time
import os
import urllib2,json
from lxml import etree
 
class WeixinInterface:
 
 def __init__(self):
  self.app_root = os.path.dirname(__file__)
  self.templates_root = os.path.join(self.app_root, 'templates')
  self.render = web.template.render(self.templates_root)
 
 def GET(self):
  #獲取輸入?yún)?shù)
  data = web.input()
  signature=data.signature
  timestamp=data.timestamp
  nonce=data.nonce
  echostr=data.echostr
  #自己的token
  token="yangyanxing" #這里改寫你在微信公眾平臺(tái)里輸入的token
  #字典序排序
  list=[token,timestamp,nonce]
  list.sort()
  sha1=hashlib.sha1()
  map(sha1.update,list)
  hashcode=sha1.hexdigest()
  #sha1加密算法  
 
  #如果是來自微信的請(qǐng)求,則回復(fù)echostr
  if hashcode == signature:
   return echostr

          

這里定義了一個(gè)GET方法,是根據(jù)微信公眾平臺(tái)的要求,進(jìn)行的token驗(yàn)證,因?yàn)檫@里我們定義了templates_root為根目錄下的templates,所以還要在根目錄下創(chuàng)建一個(gè)目錄templates的目錄

輕松實(shí)現(xiàn)python搭建微信公眾平臺(tái)_第3張圖片

因?yàn)槲⑿攀菍Ⅱ?yàn)證信息GET發(fā)出去的,所以這里使用了GET方法來取得值并且返回相應(yīng)用值

保存全部,現(xiàn)在回到微信的公眾平臺(tái)高級(jí)管理界面

微信接口配置

在url里面填寫你在新浪SAE里應(yīng)用名稱并且加上/weixin,如:http://XXXX.sinaapp.com/weixin token隨便輸入,只要注意更改weixinInterface.py中的token就行了,輸入好了以后點(diǎn)擊提交,如果沒有什么問題的話就會(huì)通過驗(yàn)證!

? 輕松實(shí)現(xiàn)python搭建微信公眾平臺(tái)_第4張圖片

第三步 ,新建一個(gè)簡(jiǎn)單的自動(dòng)回復(fù)的方法 ,鸚鵡學(xué)舌,就是用戶說什么,它也回復(fù)什么,沒什么用,只是隨便玩玩!

在weixinInterface.py里繼續(xù)添加代碼

            
def POST(self):  
  str_xml = web.data() #獲得post來的數(shù)據(jù)
  xml = etree.fromstring(str_xml)#進(jìn)行XML解析
  content=xml.find("Content").text#獲得用戶所輸入的內(nèi)容
  msgType=xml.find("MsgType").text
  fromUser=xml.find("FromUserName").text
  toUser=xml.find("ToUserName").text
  return self.render.reply_text(fromUser,toUser,int(time.time()),u"我現(xiàn)在還在開發(fā)中,還沒有什么功能,您剛才說的是:"+content)

          

?這個(gè)def 是和上一個(gè)GET同級(jí)的,注意縮進(jìn)

接著我們?cè)趖emplates目錄下創(chuàng)建reply_text.xml模板文件,寫入以下代碼

            
$def with (toUser,fromUser,createTime,content)

            
              
                              
              
                              
              
                $createTime
              
              
                              
              
                              
            
          

注意這里的toUser與fromUser是剛才post的是相反的,因?yàn)檫@里的toUser也就是POST函數(shù)里的fromUser,這里的fromUser也就是POST函數(shù)里的toUser,msgType是text

全部保存,現(xiàn)在就在用你的個(gè)人微信關(guān)注一下你創(chuàng)建的公眾微信號(hào),然后隨便輸入些內(nèi)容,如果沒有什么問題,你將會(huì)收到一條鸚鵡學(xué)舌的回復(fù)內(nèi)容!

以上就是python搭建微信公眾平臺(tái)的全部?jī)?nèi)容,大家可以根據(jù)以上步驟進(jìn)行搭建。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 欧美深夜在线 | 青草国产精品久久久久久 | 一级影院| 精品亚洲国产国拍 | 日韩欧美中文字幕一区二区三区 | 人人爽天天爽 | 68久久久久欧美精品观看 | 香蕉网站狼人久久五月亭亭 | 97综合| 久久综合丁香 | 久久爱伊人一区二区三区小说 | 久热这里只有精品在线 | 国产成人精品s8p视频 | 亚洲精品中文字幕区 | 99久久精品国产交换 | 夜夜夜夜操 | 国产精品一级视频 | 久久99精品久久久久久噜噜丰满 | 二级毛片在线观看 | 久久成人免费播放网站 | 国产成人亚洲综合 | 国产福利久久 | 成人国产在线观看 | 亚洲精品久久久久中文字小说 | 国产成人在线观看免费网站 | a毛片在线免费观看 | 精品一区二区三区 不卡高清 | 久久爱avwww久久爱 | 国产成人精品免费影视大全 | 99精品大学生啪啪自拍 | 六月婷婷中文字幕 | 曰本性l交视频 | 国产精品嫩草影院奶水 | 国产在线一91区免费国产91 | 日韩成人精品 | 日本人又黄又爽免费视频 | 亚欧乱色视频大全 | 久久99九九 | 毛片激情永久免费 | 成人短视频在线观看免费 | 成年女人毛片免费观看中文w |