zoukankan      html  css  js  c++  java
  • Python调用服务接口

    #! /usr/bin/env python
    # coding=utf-8
    ######################################################################
    # Author: yini.xie
    # Create Time: 2016-07-05 16:28:42
    # Descriptioin:
    ######################################################################
    import os
    import sys
    import time
    import json
    import urllib
    import urllib2
    from urllib import quote
    from datetime import datetime
    
    pathATM = "http://192.168.217.217:4080/invoke.json"
    
    def fmtLen(value, length=7):
        fmt = '{0:>%d}' % (length)
        return fmt.format(value)
    
    
    def changeWithdrawRule(customerId, productCode, ruleTemplateId, ruleId, operator):
        service_url_s = "http://service.xxx.com/tsService/TSRuleService_1.0.0"
        method_s = "bindCustomerWithdrawRuleTemplate"
        params_s = "parameters[]=%d&parameters[]=%d&parameters[]=%d&parameters[]=%d&parameters[]=%s" % (customerId, productCode, ruleTemplateId, ruleId, operator)
        params_s += "&url=%s&method=%s&parameterTypes[]=int&parameterTypes[]=int&parameterTypes[]=int&parameterTypes[]=int&parameterTypes[]=java.lang.String" % (service_url_s, method_s)
        url_s = pathATM + "?" + quote(params_s, safe='&=')
        data_s = urllib2.urlopen(url_s).read()
        print url_s
        return json.loads(data_s)
    
    if __name__ == '__main__':
        start = datetime.now()
    
        for line in open(sys.argv[1]).xreadlines():
            fields = line.strip().split()
            customerId = int(fields[0])
            productCode = int(fields[1])
            ruleTemplateId = int(fields[2])
            ruleId = int(fields[3])
            print "start to deal customerId = " + str(customerId)
            
            changeWithdrawRule(customerId, productCode, ruleTemplateId, ruleId, "Case")
        
    
        end = datetime.now()
    
    

    运行Python脚本,即可调用相应的接口修改数据库数据。

    python ChangeCustomerRule.py text.txt
    

    text.txt中即为参数,以空格分隔

  • 相关阅读:
    火狐浏览器清理缓存快捷键
    SVN使用教程总结
    如何登陆服务器
    get、put、post、delete含义与区别
    zookeeper 半数可用/选举机制
    zookeeper 分布式安装/配置/启动
    lucene 统计单词次数(词频tf)并进行排序
    selenium 爬取空间说说
    MapReduce自定义InputFormat,RecordReader
    reduce 阶段遍历对象添加到ArrayList中的问题
  • 原文地址:https://www.cnblogs.com/umgsai/p/5785513.html
Copyright © 2011-2022 走看看