日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

腾讯云+CentOS 7.2+python:搭建微信公众号后台入门教程

發布時間:2024/3/13 python 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 腾讯云+CentOS 7.2+python:搭建微信公众号后台入门教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

因為想自己編寫微信公眾號后臺的程序,實現一些小功能,為以后的開發做準備,所以就從零開始,摸索著注冊微信公眾號,租用服務器,搭建環境進行開發。

簡單的搭建過程中也經歷了一些波折,踩了不少坑,僅留此文給跟我類似的沒有相關經驗的朋友進行參考,可能出現的紕漏請多多包涵。

查找資料的時候,發現微信后臺服務器配置的資料大多都是有關第三方平臺,所以寫下篇記錄作為記錄和參考。

本文提及的相關經驗僅適用于:利用騰訊云服務器CentOS 7.2系統python腳本搭建公眾號后臺。

參考微信公眾平臺技術文檔的總體思路進行展開:


1.申請服務器

因為想著租用服務器的主要目的是微信公眾平臺開發,所以直接選擇了騰訊云服務器(可供選擇的還有阿里、新浪等,似乎用新浪的服務器搭建微信后臺更簡便?網上例程挺多的搜“SAE” “微信公眾號”就能找到不少資料).


要注意的是,官方文檔中提到的學生優惠“云+校園計劃”現在已經失效了,之前優惠購買的學生用戶可以繼續獲得優惠券,以優惠價格虛購至畢業。現在購買只能按統一的價格結算,不過具體結算時有一點點優惠。


服務器購買可以參考這里,因為對服務器要求不高,主要是自己跑程序,我買的是最低價格的配置。



接下來是選擇鏡像,直接選擇了官方推薦的CentOS 7.2 64位操作系統。

再下一步是選擇存儲與網絡,可以根據自己的需求選擇,最后是設置信息,重點是設置自己的密碼。

此外還可以在這里按需要選擇安全組(安全組與開放端口有關),這里不確定也沒有關系,后期可以再重新修改和設置安全組。



最后付款就可以完成服務器的租用流程。

關于Linux服務器的詳細配置中如果有疑問,可以參考官方鏈接


2.搭建服務

這一步的主要任務是安裝需要的軟件,官方指南里提到的需要安裝或者更新的軟件有:

python2.7版本以上
web.py
libxml2, libxslt, lxml python

熟悉的話可以直接進入服務器進行配置,首次接觸可以參考以下步驟:


①在控制臺中查看自己的云主機,點擊“登錄”,在彈出框中分別輸入自己的用戶名和密碼登錄云主機。



使用這個界面登錄云主機需要先登錄騰訊云,操作比較麻煩,可以使用Xshell登錄騰訊云。

具體方法網上有很多教程,比如成航先森的這篇用Xshell登錄騰訊云Linux云服務器,不過經過測試,既可以使用用戶名+密碼的模式登錄,也可以使用SSH秘鑰


②安裝和更新軟件


騰訊云提供了Yum下載源,在CentOS環境下可以通過Yum愉快地安裝和更新軟件。

可參考的幫助文檔在這里。


這里有坑

a. 部分文檔中推薦安裝 mysql-server ,我在嘗試安裝的時候會出現失敗,網上資料表示改為mariadb-server mariadb-libs mariadb即可。更改后成功安裝。


b. 當時我并沒有通過yum成功安裝web.py 最后是通過easy_install安裝成功的

//安裝setuptools wget -q http://peak.telecommunity.com/dist/ez_setup.py python ez_setup.py //安裝web.py easy_install web.py


③編輯第一段python腳本

新建main.py文件,如下:

vim main.py

輸入i 進入編輯狀態,可直接把官方例程拷貝到編輯器內:

# -*- coding: utf-8 -*- # filename: main.py import weburls = ('/wx', 'Handle', )class Handle(object):def GET(self):return "hello, this is a test"if __name__ == '__main__':app = web.application(urls, globals())app.run()
退出編輯狀態時按esc 再依次輸入:wq 保存并退出。


④運行腳本


a. 為腳本增加執行權限:

chmod u+x main.py
b.運行腳本

sudo python main.py 80


這里有坑:

80表示使用80端口,在寫好腳本并運行后,我一直不能通過“http://自己服務器外網IP:80/wx”訪問服務器并查看到腳本里返回的“hello,this is a test”。

我在這里困了很長時間,后來突然想到,自己的服務器是不是沒有打開80端口。于是打開服務器安全組查看,果然只打開了22端口(因為出于安全考慮,官方推薦配置linux服務器只打開22端口)。

到這里,新建一個開放所有端口的規則就可以了,然后關聯實例,選擇自己的云主機。規則本身是按時間遠近順序進行覆蓋的,所以配置好后再訪問http://自己服務器外網IP:80/wx”,就ok了。



3.申請公眾號

略過


4.進行開發者配置


①修改main.py的內容

# -*- coding: utf-8 -*- # filename: main.py import web from handle import Handleurls = ('/wx', 'Handle', )if __name__ == '__main__':app = web.application(urls, globals())app.run()
②新建handle.py

# -*- coding: utf-8 -*- # filename: handle.pyimport hashlib import webclass Handle(object):def GET(self):try:data = web.input()if len(data) == 0:return "hello, this is handle view"signature = data.signaturetimestamp = data.timestampnonce = data.nonceechostr = data.echostrtoken = "xxxx" #請按照公眾平臺官網\基本配置中信息填寫list = [token, timestamp, nonce]list.sort()sha1 = hashlib.sha1()map(sha1.update, list)hashcode = sha1.hexdigest()print "handle/GET func: hashcode, signature: ", hashcode, signatureif hashcode == signature:return echostrelse:return ""except Exception, Argument:return Argument
這里的token填寫一個字符串,相當于一個暗號,長度3-32位,沒有具體的要求,寫好后記下來,比如官方例程中的hello2016。


③在微信公眾平臺中進行配置

登錄自己注冊的公眾號,在左側“開發”中選擇“基本配置”。

點擊修改配置:

在url中輸入:http://外網IP:端口號/wx

token:輸入自己在程序中設置好的暗號,如hello2016

Encoding AESKey:點擊隨機生成


成功后點擊提交即可。


這里有坑:

我一直使用chrome瀏覽器,每次點擊提交之后,系統上方出現提示:“系統發生錯誤,請稍后重試”,在網上搜了很久都沒有找到類似的問題以及解決方法。

但使用瀏覽器直接訪問的時候,網頁響應內容(“hello, this is handle view”)是沒有問題的。


第二天又試了一下,依然報錯,于是在微信上找了騰訊客服,可是對方把我的問題升級之后((⊙﹏⊙) 也不知道"已升級"是個什么鬼),就暫時沒了回音。




在這里糾結了兩天,突然想到可以從瀏覽器的開發者工具里查看瀏覽器接收的反饋,和有關錯誤類型的信息。

于是找到了這么一句和錯誤有關的信息:

{"base_resp":{"ret":-1,"err_msg":"system error"}}

硬著頭皮把這句話丟到網上搜了一下,看到唯一相關的信息里,有人說是瀏覽器的原因,說是使用qq瀏覽器之后問題就解決了

馬上下了一個QQ瀏覽器試了一下,問題依然,沒有活得更多有價值的線索。

這時候看到自己測試網頁的時候經常用的瀏覽器(Google Chrome Canary),俗稱金絲雀,鬼使神差試了一下,居然就提交成功了。


④若要啟用自己的后臺,則點擊啟用。


P.S.最后這個系統錯誤的現象最后通過更換瀏覽器解決了,至于具體原因,騰訊客服暫時還沒有回復我,如果有了明確的回復,后期再來更新。


第一次寫和技術相關的博客,也是第一接觸后臺,把自己遇到的坑記下來,希望可以幫到和我一樣的人。


文中引用的文檔/博客/手冊均已說明。


文中可能有不對的地方,歡迎大家指正。



總結

以上是生活随笔為你收集整理的腾讯云+CentOS 7.2+python:搭建微信公众号后台入门教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。