【摘要】

云服务可以将企业所需的软硬件、资料都放到网络上,在任何时间、地点,使用不同的IT设备互相连接,实现数据存取、运算等目的。当前,云服务已经成为时代潮流,常见的云服务有公共云(Public

Cloud)与私有云(Private Cloud)两种。公有云中腾讯云是普及最广的,应用最多的,同时也是API接口最齐全的,支持多种语言调用。

【正文】

1、腾讯云API简介

腾讯云提供了丰富的接口,可以通过各种编程语言快捷的条用腾讯云提供的各种服务,腾讯云接口的调用提供两种方式:

n根据接口文档直接调用(需要自己组合接口调用的验证签名以及公共参数);

n使用腾讯云开发者工具套件(SDK)调用;

2、SDK调用

1.登录腾讯云控制台,进入访问控制页面;

2.获取调用接口必须的验证参数:secretid和secretkey;

3.开发环境安装腾讯云开发者工具套件(SDK);

pip install tencentcloud-sdk-python

4.从SDK包导入相应的产品模块

from tencentcloud.common import credential

from

tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException

from tencentcloud.cvm.v20170312 import cvm_client, models

5.实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey,实例化产品的client对象(需要输入一个地域接入参数)

cred =

credential.Credential('AKIDhDcnkVVprc7MODqGIN5k','c*IZaLrBI9mAIK7gz3rPj')

client =

cvm_client.CvmClient(cred,'ap-beijing')

6.实例化一个请求对象,然后通过client对象调用想要访问的接口,通过SDK的内置方法resp.RegionSet(不同接口访问数据的方法不同,也可以直接使用resp.from_json_string获取数据)即可获取接口数据

req = models.DescribeRegionsRequest()

resp = client.DescribeRegions(req)

print resp.RegionSet

3、直接调用API接口

1.直接调用腾讯云API接口是通过向腾讯云API的服务端地址发送请求,并按照接口说明在请求中加入相应请求参数来完成的。

2.腾讯云API的请求由四部分组成:

n服务地址(接口的访问地址)

n通信协议(腾讯云API的大部分接口都通过HTTPS进行通信)

n请求方法(支持POST和GET两种请求方式)

n请求参数(分公共参数和接口请求参数两种:公共参数即使调用某个产品的所有接口都需要提供的参数,接口请求参数是不同接口需要的特定参数)

以下以python调用账号相关类别里的查询项目列表接口为例说明调用方法

1.获取secretid和secretkey

2.查询该类别产品接口的公共参数,并初始化公共参数

data= {'Action':'','Nonce': random.randint(10000,99999),'Region':'bj','SecretId':'AKIDhDcnkVVHH0UheQTEE1Yprc7MODqGIN5k','Timestamp':int(time.time()),

}

Signature参数需要根据接口调用参数经过签名方法组合生成(可参考:https://cloud.tencent.com/document/api/377/4214)

3.查看具体接口的参数以及接口的访问地址,更新参数

data= {'Action':'DescribeProject','Nonce': random.randint(10000,99999),'Region':'bj','SecretId':'AKIDhDcnkVVHH0UheQTEE1Yprc7MODqGIN5k','Timestamp':int(time.time()),'allList':1,

}

url='account.api.qcloud.com/v2/index.php'#(访问地址统一要加后缀/v2/index.php)

4.进行参数排列:对所有请求参数按参数名做字典序升序排列,python默认对字典的参数进行升序排列。

5.拼接请求字符串

signature_old

=''foriinsorted(data):

signature_old = signature_old + i +"="+str(data[i]) +"&"signature_old =

signature_old[:-1]

query='GET'+ url +'?'+

signature_old

6.使用加密算法生成请求签名

hmac_str

= hmac.new(secret_key.encode('utf8'), query.encode('utf8'), hashlib.sha1).digest()

signature = base64.b64encode(hmac_str)

7.请求参数添加签名,并使用get请求方法发起接口访问请求,请求状态码为200,表示接口调用成功。

data["Signature"] = signature

resp= requests.get('https://'+

url,params=data)

python操作腾讯文档_Python调用腾讯云接口相关推荐

  1. python 描述符参考文档_python 描述符详解

    Python中包含了许多内建的语言特性,它们使得代码简洁且易于理解.这些特性包括列表/集合/字典推导式,属性(property).以及装饰器(decorator).对于大部分特性来说,这些" ...

  2. python操作pdf做文档的分割、合并,内容提取

    Python 操作 PDF 会用的库:PyPDF2 和 pdfplumber PyPDF2 可以更好的读取.写入.分割.合并PDF文件: pdfplumber 可以更好的读取 PDF 文件中内容和提取 ...

  3. python html转word文档_Python实现将HTML转换成doc格式文件的方法示例

    本文实例讲述了Python实现将HTML转换成doc格式文件的方法.分享给大家供大家参考,具体如下: 网页上的一些文章,因为有格式的原因,它们在网页上的源码都是带有html标签的,用css来进行描述. ...

  4. python能处理表格文档_python处理excel表格

    1. Python 操作 Excel 的函数库我主要尝试了 3 种读写 Exce... python 导出 oracle excel 报表 (字段名和内容支持中 文字符) 1.需要预先安装两个 pyt ...

  5. python 自动生成word文档_python实现的生成word文档功能示例

    本文实例讲述了python实现的生成word文档功能.分享给大家供大家参考,具体如下: 每月1次的测试费用报销,需要做一个文档.干脆花点时间写个程序吧. # -*- coding: utf-8 -*- ...

  6. python数组写入txt文档_Python打开文件,将list、numpy数组内容写入txt文件中的方法...

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  7. python操作js中的输入_Python调用JavaScript代码的方法

    准备阶段: 以一段简单的JS脚本为例,将代码写入到文件中,其中,定义了一个方法,计算两个数的和. //norm.js //计算两个数的和 function add(num1, num2) { retu ...

  8. python第三方库使用文档_python 的第三方库的使用

    我们写python代码的时候往往需要用第三方的库文件,Python强大的原因就是有大量的功能各异的第三方库.因此学会如何使用第三方库很有必要. 除了python官方自带的模块外,大部分第三方库是需要先 ...

  9. python操作替换word文档段落及表格table指定内容,不改变格式

    from docx import Document##读取文件 doc = Document('D:/pywenjian/word/2023年2月月报.docx')# 2023年2月 year = & ...

  10. 腾讯文档智能表格定时自动提醒如何设置?

    腾讯文档智能表是什么?可以做什么? 可能有些小伙伴已经留意到了,最近腾讯文档新推出了一个"智能表"的功能,在"在线表格"的左下角,点击"新建空白智能表 ...

最新文章

  1. 2021年春季学期-信号与系统-第四次作业参考答案
  2. jni invalid jobject
  3. 2017-2018-1 20155222 《信息安全系统设计基础》第10周 Linux下的IPC机制
  4. Swift之点击UITableView单元格动态改变cell高度
  5. 一致性环Hash算法.NET实现
  6. 可以创建专业的客户端/服务器视频会议应用程序的音频和视频控件LEADTOOLS Video Conferencing SDK...
  7. 如何帮用户管好云账本?阿里云数据库助力收钱吧 | 甲子光年
  8. 理解Linux的overcommit memory
  9. 2017年网络犯罪现状分析报告
  10. php的$符的作用,PHP引用符的用法举例
  11. POJ 3415 Common Substrings (求长度不小于k的公共子串的个数)
  12. STM32的ADC精度提高方法
  13. android加载框效果《IT蓝豹》
  14. matlab 包落,怎样在MATLAB中划出一个函数的包络线?
  15. 计算机选择题在线,计算机基础知识选择题题库全集.doc
  16. 越来越多的主板增加了WIFI功能,但是你真能用得到吗?
  17. STM8L051之通过ADC1与DMA读取内部参考电压,求取VDD电源电压---库函数版
  18. C语言——医院挂号系统(队列)
  19. 简练软考知识点整理-智慧城市参考模型
  20. 无法读取服务器php文件mime类型,PHP获得文件的mime type类型

热门文章

  1. TFIDF算法Java实现
  2. 卡诺模型案例分析_通过KANO模型来协调优先级排序(附实例)
  3. 躺平国历险记:两个超平面之间距离的计算
  4. Python学习路线
  5. Unity项目的框架设计
  6. 堆密度测定的意义_堆积密度的测量有何意义汇美科LABULK0335
  7. linux latex 英文字体,LaTeX 中的一些英文字体
  8. Java 高淇300集资源分享
  9. 计算机在小学英语中的应用,计算机在小学英语教学中的应用.doc
  10. 种草推荐redis客户端