python接口的调用方法
第一个图灵机器人接口实例:
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import urllib2,urllib
import json
import unittest, time, re class APITest():
'''
接口测试类
'''
def apicall(self,method,url,getparams,postparams):
str1=''
#GET方法调用
if method=='GET':
if getparams!="":
for k in getparams:
str1=str1+k+'='+urllib2.quote(str(getparams.get(k)))
if len(getparams)>2:
str1=str1+"&"
url=url+"&"+str1;
result = urllib2.urlopen(url).read()
#POST方法调用
if method=='POST':
# if postparams!="":
data = urllib.urlencode(postparams)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
result = response.read()
jsdata=json.loads(result)
return jsdata class APIGetAdList(unittest.TestCase):
def test_call(self):
api=APITest()
getparams=''
KEY = '***************************'
req_info = u'讲个笑话'.encode('utf-8')
postparams={'key': KEY, 'info': req_info}
data=api.apicall('POST','http://www.tuling123.com/openapi/api',getparams,postparams).get('text').replace('<br>', '\n')
print data if __name__ == "__main__":
unittest.main()
第二个图灵机器人接口实例:
# -*- coding: utf-8 -*-
import json
import requests
import urllib
import urllib2 KEY = '*********************' # change to your API KEY
url = 'http://www.tuling123.com/openapi/api' req_info = u'讲个笑话'.encode('utf-8') query = {'key': KEY, 'info': req_info}
headers = {'Content-type': 'text/html', 'charset': 'utf-8'} # 方法一、用requests模块已get方式获取内容
r = requests.get(url, params=query, headers=headers)
res = r.text
print json.loads(res).get('text').replace('<br>', '\n') # 方法二、用urllib和urllib2库获取内容
data = urllib.urlencode(query)
req = urllib2.Request(url, data)
f = urllib2.urlopen(req).read()
print json.loads(f).get('text').replace('<br>', '\n')
python接口的调用方法的更多相关文章
- 快递api网接口快递调用方法
----------------实体类 [DataContract] public class SyncResponseEntity { public SyncResponseEntity() { } ...
- 齐全的IP地址查询接口及调用方法(转)
设计蜂巢IP地址查询接口:http://www.hujuntao.com/api/ip/ip.php 腾讯IP地址查询接口:http://fw.qq.com/ipaddress 新浪IP地址查询接口: ...
- IP地址查询接口及调用方法
1.查询地址 搜狐IP地址查询接口(IP):http://pv.sohu.com/cityjson 1616 IP地址查询接口(IP+地址):http://w.1616.net/chaxun/ipto ...
- java 类中定义接口的调用方法
public class Human { public interface MyAction { public void getPower(); } } public class Test{ publ ...
- 云极知客开放平台接口调用方法(C#)
云极知客为企业提供基于SAAS的智能问答服务.支持企业个性化知识库的快速导入,借助语义模型的理解和分析,使企业客户立即就拥有本行业的24小时客服小专家.其SAAS模式实现零成本投入下的实时客服数据的可 ...
- 用ladon框架封装Python为Webservice接口以及调用接口的方法
一.用ladon框架封装Python为Webservice接口 功能实现的同时,希望将接口开放给别人,而封装python接口的一个再简单不过的框架Ladon,而且提供不同的协议,包括SOAP和Json ...
- Python 调用 Hprose接口、Dubbo接口、Java方法
#!/usr/bin/env python # -*- coding:utf-8 -*- # ************************************* # @Time : 2019/ ...
- Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要
1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...
- 用Python写WebService接口并且调用
一.用ladon框架封装Python为Webservice接口 另用soaplib实现请看: http://www.jianshu.com/p/ad3c27d2a946 功能实现的同时,希望将接 ...
随机推荐
- 修改ECSHOP系统红包序列号规律
ECSHOP系统线下发放红包时系统生成的红包序列号是在10000的基础上增加四位随机数字.如果当我们要发放大额度红包的时候,这样的序列号规则难免给人不安全的感觉,万一真的有哪个无聊的人,用一天时间来蒙 ...
- [STL]set/multiset用法详解[自从VS2010开始,set的iterator类型自动就是const的引用类型]
集合 使用set或multiset之前,必须加入头文件<set> Set.multiset都是集合类,差别在与set中不允许有重复元素,multiset中允许有重复元素. sets和mul ...
- HTML,javaScript,DOM详解
HTML DOM 教程 DOM 教程 DOM 简介 HTML DOM 定义了访问和操作 HTML 文档的标准方法. DOM 将 HTML 文档表达为树结构. HTML DOM 树 HTML DOM 简 ...
- HTML学习之canves元素
1:绘制画布 和在画布上绘制矩形 <!DOCTYPE html> <html> <head lang="en"> <meta charse ...
- pip命令使用国内pypi镜像源加速在线安装
参考:http://www.cnblogs.com/yudar/p/4444097.html 用easy_install和pip来安装第三方库很方便 它们的原理其实就是从Python的官方源pypi. ...
- Servlet基础(下)
10.Servlet定义初始化参数必须使用web.xml中的init-param/para-name和 para-value元素;11.ServletConfig对象的getInitParameter ...
- _in、_out。。。
_in 输入参数_out 输出参数_opt 参数是可选的,就是可以为NULL_ecount 所指向的缓存的元素个素 也就是括号里的数字
- 创建FrameWork
1, http://blog.sina.com.cn/s/blog_407fb5bc01013v6s.html] 2,使用动态库 http://www.cocoachina.com/industry/ ...
- 高通Android平台硬件调试之Camera篇
之前一段时间有幸在高通android平台上调试2款camera sensor,一款是OV的5M YUV sensor,支持jpeg out,同时也支持AF,调试比较比较简单,因为别的项目已经在使用了, ...
- 【leetcode❤python】 36. Valid Sudoku
#-*- coding: UTF-8 -*-#特定的九个格内1-9的个数至多为1#依次检查每行,每列,每个子九宫格是否出现重复元素,如果出现返回false,否则返回true.class Solutio ...