批量获取钉钉审批实例 (钉钉接口文档 :https://open-doc.dingtalk.com/microapp/serverapi2/eev437 )
请求钉钉的url 需要有 access_token (获取access_token 的方法 https://open-doc.dingtalk.com/microapp/serverapi2/eev437)
获取 access_token
import urllib.request
import json
""" appkey
appsecret 在上述链接中有获取方法
"""
def getToken():
appkey = ''
appsecret =''
headers = {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36'
}
url = 'https://oapi.dingtalk.com/gettoken?appkey=%s&appsecret=%s' % (appkey,appsecret)
req =urllib.request.Request(url,headers= headers)
result= urllib.request.urlopen(req)
access_token = json.loads(result.read())
print(access_token)
getToken()
每个审批流都会指定一个唯一码,即process_code 获取 process_code https://open-doc.dingtalk.com/microapp/serverapi2/ca8r99#w7x8wl
获取实例id
import urllib.request
import urllib.parse
import requests
import json
import os
import sys
def getToken():
accesstoken ='' 获取的accesstoken值
headers = {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36'
}
data={ 'process_code':'',
'start_time':'1544406815'} # 时间戳
# senddata = urllib.parse.urlencode(data).encode(encoding='UTF8')
data1 = json.dumps(data).encode(encoding='UTF8')
url = 'https://oapi.dingtalk.com/topapi/processinstance/list?access_token=%s' % (accesstoken)
req =urllib.request.Request(url,headers= headers,data = data1)
result= urllib.request.urlopen(req)
list = json.loads(result.read())
print(list)
getToken()