最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用 Python 實(shí)現(xiàn)微信公眾號(hào)粉絲遷移流程

 更新時(shí)間:2018年01月03日 08:37:39   作者:adanz  
近日,因公司業(yè)務(wù)需要,需將原兩個(gè)公眾號(hào)合并為一個(gè),即要將其中一個(gè)公眾號(hào)(主要是粉絲)遷移到另一個(gè)公眾號(hào)。這篇文章主要介紹了使用 Python 實(shí)現(xiàn)微信公眾號(hào)粉絲遷移,需要的朋友可以參考下

近日,因公司業(yè)務(wù)需要,需將原兩個(gè)公眾號(hào)合并為一個(gè),即要將其中一個(gè)公眾號(hào)(主要是粉絲)遷移到另一個(gè)公眾號(hào)。按微信規(guī)范,同一用戶(hù)在不同公眾號(hào)內(nèi)的 openid 是不同的,我們的業(yè)務(wù)系統(tǒng)不例外地記錄了用戶(hù)的 openid,因此,涉及到兩個(gè)公眾號(hào)的 openid 的轉(zhuǎn)換。幸好,微信公眾號(hào)平臺(tái)在賬號(hào)遷移描述提供了方法和API供調(diào)用,詳見(jiàn):

http://kf.qq.com/faq/170221aUnmmU170221eUZJNf.html

這里使用 Python 寫(xiě)個(gè)程序來(lái)完成,簡(jiǎn)單快捷,主要知識(shí)點(diǎn)有:

  • MySQL connector 使用,也就是 Python DB API 規(guī)范
  • HTTP客戶(hù)端庫(kù) requests 使用
  • 微信公眾號(hào)平臺(tái) API 使用

首先,建立新舊 openid 對(duì)照表。

CREATE TABLE change_openidlist(
  id BIGINT NOT NULL AUTO_INCREMENT,
  ori_openid varchar(100) NOT NULL,
  new_openid varchar(100) NOT NULL,
  CONSTRAINT crm_change_openidlist_pk PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci ;

如果沒(méi)有安裝,則需先安裝以下類(lèi)庫(kù)。

pip install mysql-connector-python
pip install requests

接著,運(yùn)行下面 python 程序,即可將新舊 openid 對(duì)照數(shù)據(jù)寫(xiě)到 change_openidlist,然后就可以根據(jù)這個(gè)表的數(shù)據(jù)去更新其它數(shù)據(jù)表了。

其它可見(jiàn)注釋?zhuān)辉斒?,?dāng)然不要忘了將 appid 和 secret 替換為自己公眾號(hào)。

# -*- coding: utf-8 -*-
import requests
import mysql.connector
def handle_data():
  try:
    token = get_access_token()
    #自動(dòng)提交方式 autocommit=True
    conn = mysql.connector.connect(host='127.0.0.1', port='3306', user='user', password='password', database='wx', use_unicode=True,autocommit=True);
    qcursor = conn.cursor(buffered=True)
    wcursor = conn.cursor()
    #舊公眾號(hào) openid
    qcursor.execute('select openid from wxmembers')
    size = 100
    while True:
      list = qcursor.fetchmany(size)
      if not list:
        break
      changeopenid_list = get_changeopenid_list(list,token)
      wcursor.executemany('insert into change_openidlist (ori_openid,new_openid) values (%s, %s)',changeopenid_list)
  except mysql.connector.Error as e:
    print ('Error : {}'.format(e))
  finally:
    qcursor.close
    wcursor.close()
    conn.close
    print 'openid handle finished!'
def get_access_token():
  new_appid = '00000'
  new_secret = '11111'
  url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential' # grant_type為固定值
  payload = {'appid': new_appid, 'secret': new_secret}
  r = requests.get(url,params = payload)
  response = r.json()
  return response['access_token']
def get_changeopenid_list(ori_openid_list,token):
  new_access_token = token
  ori_appid = '33333'
  url = 'http://api.weixin.qq.com/cgi-bin/changeopenid?access_token='+ new_access_token
  payload = {'to_appid': ori_appid, 'openid_list': ori_openid_list}
  r = requests.post(url,json = payload)
  response = r.json()
  result_list = response['result_list']
  openid_list = [[result['ori_openid'],result['new_openid']] for result in result_list if result['err_msg'] == 'ok']
  return openid_list
if __name__ == '__main__':
  handle_data()

總結(jié)

以上所述是小編給大家介紹的使用 Python 實(shí)現(xiàn)微信公眾號(hào)粉絲遷移流程,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Python numpy.zero() 初始化矩陣實(shí)例

    Python numpy.zero() 初始化矩陣實(shí)例

    今天小編就為大家分享一篇Python numpy.zero() 初始化矩陣實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • python查找第k小元素代碼分享

    python查找第k小元素代碼分享

    這篇文章分享了python查找第k小的元素程序代碼,大家參考使用吧
    2013-12-12
  • python實(shí)現(xiàn)二叉查找樹(shù)實(shí)例代碼

    python實(shí)現(xiàn)二叉查找樹(shù)實(shí)例代碼

    這篇文章主要介紹了python實(shí)現(xiàn)二叉查找樹(shù)實(shí)例代碼,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • 人生苦短我用python python如何快速入門(mén)?

    人生苦短我用python python如何快速入門(mén)?

    這篇文章主要教大家如何快速入門(mén)python,一個(gè)簡(jiǎn)短而全面的入門(mén)教程帶你走入Python的大門(mén),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python的語(yǔ)言類(lèi)型(詳解)

    Python的語(yǔ)言類(lèi)型(詳解)

    下面小編就為大家?guī)?lái)一篇Python的語(yǔ)言類(lèi)型(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • Python可視化繪制圖表的教程詳解

    Python可視化繪制圖表的教程詳解

    python?有許多可視化工具,但本文主要為大家介紹一下Matplotlib。Matplotlib是一種2D的繪圖庫(kù),它可以支持硬拷貝和跨系統(tǒng)的交互,感興趣的可以了解一下
    2022-10-10
  • Python使用matplotlib的pie函數(shù)繪制餅狀圖功能示例

    Python使用matplotlib的pie函數(shù)繪制餅狀圖功能示例

    這篇文章主要介紹了Python使用matplotlib的pie函數(shù)繪制餅狀圖功能,結(jié)合實(shí)例形式分析了Python使用matplotlib的pie函數(shù)進(jìn)行餅狀圖繪制的具體操作技巧,注釋中對(duì)pie函數(shù)的用法進(jìn)行了詳細(xì)的說(shuō)明,便于理解,需要的朋友可以參考下
    2018-01-01
  • python實(shí)現(xiàn)抖音視頻批量下載

    python實(shí)現(xiàn)抖音視頻批量下載

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)抖音視頻批量下載,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Python?Flask-Login模塊使用案例詳解

    Python?Flask-Login模塊使用案例詳解

    Flask-Login?通過(guò)?user?session,提供登錄的常見(jiàn)任務(wù),比如登入?(logging?in)、登出?(logging?out)?和當(dāng)前用戶(hù)?(current?user),這篇文章主要介紹了Python?Flask-Login模塊使用詳解,需要的朋友可以參考下
    2023-01-01
  • Python多版本開(kāi)發(fā)環(huán)境管理工具介紹

    Python多版本開(kāi)發(fā)環(huán)境管理工具介紹

    這篇文章主要介紹了Python多版本開(kāi)發(fā)環(huán)境管理工具介紹的相關(guān)資料,在Python開(kāi)發(fā)中,有些情況下,我們可能面臨在一臺(tái)機(jī)器上同時(shí)安裝多版本Python的需求,需要的朋友可以參考下
    2019-07-07

最新評(píng)論

沂南县| 仙居县| 连州市| 库车县| 措勤县| 徐闻县| 昌黎县| 安义县| 嘉义县| 梧州市| 吐鲁番市| 阜平县| 广水市| 玉龙| 垫江县| 芮城县| 正镶白旗| 怀集县| 武威市| 平邑县| 柳林县| 北京市| 祥云县| 贵州省| 平利县| 周宁县| 木里| 香格里拉县| 焉耆| 准格尔旗| 镶黄旗| 来宾市| 宜都市| 休宁县| 玉溪市| 忻城县| 任丘市| 柳江县| 沙田区| 建始县| 昭平县|