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

使用python3.0?對(duì)接美團(tuán)接口的實(shí)現(xiàn)示例

 更新時(shí)間:2022年05月27日 15:55:54   作者:普信男崔斯特  
本文主要介紹了python3.0?對(duì)接美團(tuán)接口的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

提示:嗨咯,大家好,今天又來更新了  本章要和大家分享的是關(guān)于美團(tuán)接口的實(shí)現(xiàn)方式以及部分代碼的展示。

前言

首先我們?nèi)?duì)接一個(gè)接口時(shí)首先要懂它的接口規(guī)則,也就是要讀懂他的官方文檔  地址如下:

https://open-shangou.meituan.com/home/doc/bulkPurchasing/37

提示:以下是本篇文章正文內(nèi)容,下面案例可供參考

一、請(qǐng)求接口的基本系統(tǒng)參數(shù)解析

 

解析:時(shí)間戳(timestamp)獲取當(dāng)前的時(shí)間轉(zhuǎn)化為一串?dāng)?shù)字

app_id 是美團(tuán)給的官方id這個(gè)沒什么好說的

sig 這個(gè)值是根據(jù)一系列的參數(shù)和 美團(tuán)Secret拼接 通過mod5加密然后得到的一個(gè)字符串。

具體 計(jì)算簽名的方法再看看官方文檔:美團(tuán)閃購開放平臺(tái)  

這幾個(gè)系統(tǒng)級(jí)參數(shù)都是每次必填的

二、具體參數(shù)的代碼實(shí)現(xiàn)

1.timestamp(時(shí)間戳)

def get_tamp():  # 獲取當(dāng)前的時(shí)間戳
    t = time.time()
    return int(t)

2.計(jì)算sig簽名

代碼如下(示例):

#這個(gè)方法可以直接將傳入的參數(shù)拼接成加密前的字符串
def param_sort(param_dict):  #傳入字典,返回生成sig的字符串
    keys_list = sorted(param_dict.keys())
    rb_str = ''
    for k in keys_list:
        key_value = k + '=' + str(param_dict[k])
        rb_str = rb_str + key_value + "&"
        # rb_str = rb_str[0:-1] #不保留字符串末尾的&
    return rb_str[0:-1]
#通過前面的字符串 加密出sig
def sig_mod5(sig_url):  #將字符串傳入進(jìn)行加密
    m = hashlib.md5()
    m.update(sig_url.encode('utf8'))
    sig = m.hexdigest()
    return sig
 
 

3.獲取一個(gè)時(shí)間段的訂單號(hào)

下面就淺淺的演示一下吧

 
def param_sort(param_dict):  #傳入字典,返回生成sig的字符串
    keys_list = sorted(param_dict.keys())
    rb_str = ''
    for k in keys_list:
        key_value = k + '=' + str(param_dict[k])
        rb_str = rb_str + key_value + "&"
        # rb_str = rb_str[0:-1] #不保留字符串末尾的&
    return rb_str[0:-1]
 
def sig_mod5(sig_url):
    m = hashlib.md5()
    m.update(sig_url.encode('utf8'))
    sig = m.hexdigest()
    return sig
 
def get_tamp():  # 獲取當(dāng)前的時(shí)間戳
    t = time.time()
    return int(t)
 
def req_get_result(api_url, api_data):  # get方法請(qǐng)求函數(shù)
    req_get = requests.get(api_url, api_data)
    result = req_get.json()
    return result
 
 
 
def req_post_result(api_url, api_data):  # post方法請(qǐng)求函數(shù)
    req_post = requests.post(api_url, data=api_data)
    result = req_post.json()
    return result
 
 
def 獲取一個(gè)時(shí)間段的訂單號(hào)(date_time, day_seq_start,day_seq_end,mendian):  # 今日流水單號(hào),門店編號(hào)
    sing_data = {
        'app_id': 2005,#演示app_id并非真的
        'app_poi_code': mendian, #門店編號(hào)
        'timestamp': get_tamp(),  # 時(shí)間戳
        'date_time': date_time,   #下面幾個(gè)參數(shù)是應(yīng)用級(jí)參數(shù)
        'day_seq_start': day_seq_start,
        'day_seq_end': day_seq_end  
    }
    # 請(qǐng)求地址
    url = 'https://waimaiopen.meituan.com/api/v1/ecommerce/order/getOrderIdByDaySeq'
    # 美團(tuán)Secret
    secret = '6322e9b60722123cd196729a9481223b' #演示secret 并非真的
    # 拼接sig前的字符串
    befsig = url + '?' + param_sort(sing_data) + secret #把參數(shù)拼接成美團(tuán)規(guī)定的格式
    sig = sig_mod5(befsig) #然后對(duì)拼接字符串進(jìn)行加密
    urls = url + '?' + param_sort(sing_data) + '&sig=' + sig #加密之后再次拼接請(qǐng)求地址
    print(urls)
    req_get = requests.get(urls) #發(fā)起請(qǐng)求
    result = req_get.json()
    return result['data'] #返回結(jié)果

總結(jié)

總的來說實(shí)現(xiàn)的方式還是比較簡單,可能難點(diǎn)就是要去讀懂他們的文檔,了解他們規(guī)則,今天的分享就到此為啦?。?!

到此這篇關(guān)于使用python3.0 對(duì)接美團(tuán)接口的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)python3.0 對(duì)接美團(tuán)接口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

凤山县| 衡水市| 民丰县| 永胜县| 长丰县| 江北区| 白城市| 和平县| 长宁县| 涪陵区| 聂荣县| 特克斯县| 冷水江市| 沙坪坝区| 阳高县| 南阳市| 台山市| 厦门市| 芜湖市| 喀喇沁旗| 定结县| 昭平县| 敦化市| 宜兰市| 定结县| 逊克县| 蓝田县| 思南县| 原平市| 天门市| 芷江| 广安市| 收藏| 商河县| 荃湾区| 高密市| 福贡县| 景宁| 阜平县| 丹东市| 繁昌县|