python如何调用阿里云接口_python 调用阿里云云解析api添加记录

首先安装阿里云SDK

pip install aliyun-python-sdk-core

pip install aliyun-python-sdk-alidns

可以配合jenkins传递参数

#!/usr/bin/python3

# -*- coding: utf-8 -*-

# @Time : 2018/1/24 0024 13:42

# @Author : sanmuyan

# @FileName: aliyun_domain_des.py

import json,jsonpath,os

from aliyunsdkcore.client import AcsClient

from aliyunsdkcore.acs_exception.exceptions import ClientException

from aliyunsdkcore.acs_exception.exceptions import ServerException

from aliyunsdkalidns.request.v20150109 import DescribeDomainRecordsRequest

from aliyunsdkalidns.request.v20150109 import AddDomainRecordRequest

from aliyunsdkalidns.request.v20150109 import DeleteDomainRecordRequest

from aliyunsdkalidns.request.v20150109 import DescribeDomainRecordInfoRequest

AccessKey = os.environ.get('AccessKey')

Secret = os.environ.get('Secret')

Regions = os.environ.get('Regions')

# 创建 AcsClient 实例

client = AcsClient(

AccessKey,

Secret,

Regions

);

def dns_des(RecordId):

request = DescribeDomainRecordInfoRequest.DescribeDomainRecordInfoRequest()

request.set_RecordId(RecordId)

response = client.do_action_with_exception(request)

data = json.loads(response)

data = json.dumps(data, sort_keys=True, indent=2)

print(data)

def dns_del(DomainName, RR):

request = DescribeDomainRecordsRequest.DescribeDomainRecordsRequest()

request.set_DomainName(DomainName)

request.set_RRKeyWord(RR)

response = client.do_action_with_exception(request)

data = json.loads(response)

TotalCount = jsonpath.jsonpath(data,"$..TotalCount")

if TotalCount[0] != 0:

data1 = jsonpath.jsonpath(data,"$..RR")

data2 = jsonpath.jsonpath(data,"$..RecordId")

if RR in data1:

index = data1.index(RR)

RecordId = data2[index]

print("WARNING: Delete the existing records")

dns_des(RecordId)

request = DeleteDomainRecordRequest.DeleteDomainRecordRequest()

request.set_RecordId(RecordId)

response = client.do_action_with_exception(request)

return response

def dns_add(DomainName, RR, Type, Value):

dns_del(DomainName, RR)

request = AddDomainRecordRequest.AddDomainRecordRequest()

request.set_DomainName(DomainName)

request.set_RR(RR)

request.set_Type(Type)

request.set_Value(Value)

response = client.do_action_with_exception(request)

data = json.loads(response)

print("INFO: Record adding success")

RecordId = (data['RecordId'])

dns_des(RecordId)

if __name__ == '__main__':

DomainName = os.environ.get('DomainName')

RR = os.environ.get('RR')

Type = os.environ.get('Type')

Value = os.environ.get('Value')

dns_add(DomainName, RR, Type, Value)

python 调用阿里云服务器api创建服务器

首先安装阿里云SDK pip install aliyun-python-sdk-core pip install aliyun-python-sdk-ecs 可以配合jenkins传递参数 #!/u ...

Python 调用阿里云 API 收集 ECS 数据

#!/usr/bin/env python # coding: utf-8 # author: Wang XiaoQiang ''' 功能介绍: 1.调用阿里云API,收集所有区域 ECS 信息 2. ...

C#调用阿里云CDN API刷新缓存

使用CDN必须要解决CDN缓存的问题,要么在每次更新文件时生成不同的URL,要么在每次更新文件时刷新CDN缓存.我们在一个实际应用场景中用到了后者,所以需要调用阿里云CDN的API进行缓存刷新的操作. ...

python调用有道翻译api实现翻译

通过调用有道翻译的api,实现中译英.其他语言译中文 代码: # coding=utf-8 import urllib import urllib2 import json import time i ...

用Python调用阿里云的短信接口

#!/usr/bin/env python# -*- coding:utf-8 -*-# Author:Frank import uuidimport datetimeimport hmacimpor ...

python调用openstack的api,create_instance的程序解析

python调用openstack的api,create_instance的程序解析 2017年10月17日 15:27:24 CloudXli 阅读数:848   版权声明:本文为博主原创文章,未经 ...

Python调用zabbix API批量添加主机 (读取Excel)

本文转载自:http://blog.mreald.com/178 Zabbix可以通过自发现添加主机,不过有时候不准确,通过API添加会更加准确! 脚本使用的跟zabbix相关的内容.参考的是zabb ...

python批量解析域名a记录

#encoding:utf-8 import requests import json import dns.resolver import sys reload(sys) sys.setdefaul ...

python 调用zabbix api接口实现主机的增删改查

python程序调用zabbix系统的api接口实现对zabbix_server端主机的增删改查,使用相关功能时候,需要打开脚本中的相关函数. 函数说明: zabbixtools()  调用zabbi ...

随机推荐

QT5.1 调用https

以VS开发为例.因为https访问需要用到SSL认证,而QT默认是不支持SSL认证,所以在使用之前必须先做一些准备工作: 需要安装OpenSSL库: 1.首先打开http://slproweb.com ...

Effective C++ 33 避免遮掩继承而来的名称

首先介绍一个原则LSP(Liskov Substitution Principle),如果Class D以Public方式继承Class B,则所有B对象可以派上用场的任何地方,D对象一样可以派上用场 ...

poj 2142 拓展欧几里得

#include #include #include #include

MinGW gcc 生成动态链接库 dll 的一些问题汇总 (补充)

我以前写过一个小短文,介绍MinGW gcc 生成动态链接库 dll 的一些问题.当时写的并不全面.近期又遇到写新的问题.这里记录一下,做个补充. 通常情况下,dll 中的函数假设採用 _stdcal ...

1084: [SCOI2005]最大子矩阵

1084: [SCOI2005]最大子矩阵 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1325  Solved: 670[Submit][Stat ...

《一头扎进SpringMvc视频教程》Rest风格的资源URL

5.@PathVariable和@RequestParam的区别 请求路径上有个id的变量值,可以通过@PathVariable来获取  @RequestMapping(value = "/ ...

JS调用模式

在js中,一共4中调用方式.需要注意的是,调用方式中,this的指向问题. 函数调用模式 this丢失,debug会提示未定义相应属性.按照规范,需要将this赋值给that let myObj = ...

初识elasticsearch_2(查询和整合springboot)

初始化 首先将官网所下载的json文件,放入到es中,采用如下命令: curl -H "Content-Type: application/json" -XPOST 'localh ...

Python3基础 list 索引查看元素

Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

jquery判断密码是否一致?

密码 请输入密码 重新输入密码 请输入新密码 密码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值