zoukankan      html  css  js  c++  java
  • python 工行 api 查询

    最近学习python 又在做接口 于是找了N多资料 终于实现了 下面是代码

    # -*- coding:gbk -*- 
    import httplib 
    import cookielib
    import urllib2
    import urllib

    # 用chilkat拆分pfx得到key,cert的pem格式
    key_file = 'chilkat_pkey.pem'
    cert_file 
    = 'chilkat_cert.pem'

    class HTTPSClientAuthConnection(httplib.HTTPSConnection):
        
    def __init__(self, host, timeout=None):
            httplib.HTTPSConnection.
    __init__(self, host, key_file=key_file,cert_file=cert_file)
            self.timeout 
    = timeout # Only valid in Python 2.6

    class HTTPSClientAuthHandler(urllib2.HTTPSHandler):
        
    def https_open(self, req):
            
    return self.do_open(HTTPSClientAuthConnection, req)

    class ICBCAPI(object):
        
    def __init__(self):
            self._cookiejar 
    = cookielib.CookieJar()

        
    def get(self, url, **data):
            parameters 
    = urllib.urlencode(data)
            opener 
    = urllib2.build_opener(urllib2.HTTPHandler(), HTTPSClientAuthHandler(), urllib2.HTTPCookieProcessor(self._cookiejar))
            req 
    = urllib2.Request(url, parameters)
            server_response 
    = opener.open(req).read()
            
    return urllib2.unquote(server_response)

    def test():
        api 
    = ICBCAPI()
        apiUrl 
    = "https://corporbank3.dccnet.com.cn/servlet/ICBCINBSEBusinessServlet"
        merReqData = '''
        <?xml version="1.0" encoding="GBK\" standalone="no" ?>
        <ICBCAPI>
            <in>
                <orderNum>填你们自己的</orderNum>
                <tranDate>填你们自己的</tranDate>
                <ShopCode>填你们自己的</ShopCode>
                <ShopAccount>填你们自己的</ShopAccount>
            </in>
        </ICBCAPI>
    '''
        
    print api.get(apiUrl,APIName='EAPI',APIVersion='001.001.002.001',MerReqData=merReqData)
        
    if __name__ == '__main__':

        test() 

    希望对你们有帮助
  • 相关阅读:
    BZOJ4754 JSOI2016独特的树叶(哈希)
    锦标赛游戏 解题报告
    nowcoder OI 周赛 最后的晚餐(dinner) 解题报告
    Prufer序列
    牛客网 Wannafly挑战赛27 蓝魔法师
    替罪羊树板子
    AT1984 Wide Swap
    洛谷 P1829 [国家集训队]Crash的数字表格 / JZPTAB 解题报告
    CF858F Wizard's Tour 解题报告
    OI中组合数的若干求法与CRT
  • 原文地址:https://www.cnblogs.com/Death/p/1994069.html
Copyright © 2011-2022 走看看