阿里云CDNapi
#!/usr/bin/env python
from aliyunsdkcore import client
import json
from aliyunsdkcdn.request.v20141111 import DescribeUserDomainsRequest # 获取CDN域名列表类
from aliyunsdkcdn.request.v20141111 import RefreshObjectCachesRequest # 刷新CDN的类
from aliyunsdkcdn.request.v20141111 import DescribeRefreshTasksRequest # CDN刷新操作日志类
from aliyunsdkcdn.request.v20141111 import DescribeRefreshQuotaRequest # CDN剩余刷新次数的类 class Aliyun:
"""
阿里云CDN刷新操作相关,3.5版本暂时不支持,官网声明支持2.7版本,2.6亲测可用,写成类没什么意义啊,wtf,算了,就酱吧
官网资料https://helpcdn.aliyun.com/document_detail/27200.html?spm=5176.doc27148.6.625.VnHkL4
但是这资料真特么没有什么卵用,艹
pip install aliyun-python-sdk-cdn 安装
pip install aliyun-python-sdk-cdn --upgrade 升级
pip uninstall aliyun-python-sdk-cdn 卸载
"""
__instance = None def __init__(self, AccessKey='xxxxxxxxxxxxxxxxxxxx', AccessSecret='xxxxxxxxxxxxxxxxxxx'):
"""
https://helpcdn.aliyun.com/document_detail/27248.html?spm=5176.doc27247.6.727.6F2Khg
:param AccessKey: 阿里云服务器内部可生成,上面的网页有跳转链接
:param AccessSecret: 阿里云服务器内部可生成
"""
self.AccessKey = AccessKey
self.AccessSecret = AccessSecret
self.Client = client.AcsClient(self.AccessKey, self.AccessSecret, 'cn-hangzhou') @staticmethod
def singleton():
if Aliyun.__instance:
return Aliyun.__instance
else:
Aliyun.__instance = Aliyun()
return Aliyun.__instance def refresh_cdn_url(self, url, Type):
"""
刷新指定路径缓存,cdn是什么就不解释了....
:param url: 需要刷新的目标url,需要注意的是如果是域名则必须以‘/’结尾
:param Type: 域名为Directory,例如http://www.bfmq.com/
单独文件为File,例如http://www.bfmq.com/a.txt
:return: 返回的信息真神奇,一点卵用都没用,说好的error code呢,亲?so,不返回了
"""
self.request = RefreshObjectCachesRequest.RefreshObjectCachesRequest()
self.request.set_ObjectPath(url)
self.request.set_ObjectType(Type)
self.request.set_accept_format('json')
self.result = json.loads(self.Client.do_action(self.request))
print(self.result) def get_cdn_data(self):
"""
获取本日可刷新剩余次数,默认每日文件2000次,目录100次,应该跟会员等级有关系....
:return: UrlRemain 今日url刷新数剩余
DirRemain 今日dir刷新数剩余
UrlQuota 今日url刷新数总量
DirQuota 今日dir刷新数总量
"""
self.request = DescribeRefreshQuotaRequest.DescribeRefreshQuotaRequest()
self.request.set_accept_format('json')
self.result = json.loads(self.Client.do_action(self.request))
print(self.result) def get_cdn_log(self, page=1, page_size=20):
"""
获取七天内CDN刷新操作日志
:param page: 取得第几页 取值范围为:1-100000
:param page_size: 分页大小,默认20,最大50
:return: 返回的是UTC时间哦
"""
self.request = DescribeRefreshTasksRequest.DescribeRefreshTasksRequest()
self.request.set_accept_format('json')
self.request.set_PageNumber(page)
self.request.set_PageSize(page_size)
self.result = json.loads(self.Client.do_action(self.request)).get("Tasks").get("CDNTask")
print(self.result) def get_cdn_url(self, page=1, page_size=20):
"""
获取本云用户下域名列表
:param page: 取得第几页 取值范围为:1-100000
:param page_size: 分页大小,默认20,最大50
:return:
"""
self.request = DescribeUserDomainsRequest.DescribeUserDomainsRequest()
self.request.set_PageNumber(page)
self.request.set_PageSize(page_size)
self.request.set_accept_format('json')
self.result = json.loads(self.Client.do_action(self.request)).get("Domains").get("PageData")
print(self.result)
阿里云CDNapi的更多相关文章
- [linux]阿里云主机的免登陆安全SSH配置与思考
公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...
- 阿里云直播 C# SDK 如何使用
阿里云直播SDK的坑 1.直播云没有单独的SDK,直播部分被封装在CDN的相关SDK当中. 2.针对SDK,没有相关Demo. 3.针对SDK,没有相关的文档说明. 4.针对SDK的说明,官网上的说明 ...
- 8.仿阿里云虚拟云服务器的FTP(包括FTP文件夹大小限制)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html#iis 原文:http://dnt.dkill.net/Ar ...
- 阿里云服务器上配置并使用: PHP + Redis + Mysql 从配置到使用
(原创出处为本博客,http://www.cnblogs.com/linguanh/) 目录: 一,下载 二,解压 三,配置与启动 四,测试 Redis 五,配置 phpRedis 扩展 六,综合测试 ...
- 阿里云学生优惠Windows Server 2012 R2安装IIS,ftp等组件,绑定服务器域名,域名解析到服务器,域名备案,以及安装期间错误的解决方案
前言: 这几天终于还是按耐不住买了一个月阿里云的学生优惠.只要是学生,在学信网上注册过,并且支付宝实名认证,就可以用9块9的价格买阿里云的云服务ECS.确实是相当的优惠. 我买的是Windows S ...
- 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践
提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...
- FineReport如何用JDBC连接阿里云ADS数据库
在使用FineReport连接阿里云的ADS(AnalyticDB)数据库,很多时候在测试连接时就失败了.此时,该如何连接ADS数据库呢? 我们只需要手动将连接ads数据库需要使用到的jar放置到%F ...
- [故障公告]受阿里云部分ECS服务器故障影响,目前无法上传图片与文件
抱歉!今天下午阿里云华东1可用区B的部分ECS服务器出现IO HANG问题,受此影响,我们的图片与文件上传服务器无法访问,由此给您带来麻烦,请您谅解. 16:30左右开始,我们发现图片与文件上传服务器 ...
- 分享阿里云推荐码 IC1L2A,购买服务器可以直接打9折,另附阿里云服务器部署ASP.NET MVC5关键教程
阿里云推荐码为:IC1L2A 阿里云还是不错滴. 以windows server 2008 R2为例,介绍如何从全新的服务器部署MVC5 站点. 新购买的阿里云服务器是没有IIS的,要安装IIS: 控 ...
随机推荐
- youtube-dl取代you-get?
以前了解到you-get这个项目,支持超多视频网站下载,不过偶尔会出各种问题. 今天看到依云的博客文章:放弃 you-get,转投 youtube-dl 然后特地看了youtube-dl的支持列表:h ...
- Android相关工具下载(ADT、NDK等等)
一个非常牛掰的网站,可以下载很多Android相关的工具等 网址为: http://www.androiddevtools.cn/
- 负载均衡之F5设备
http://xjsunjie.blog.51cto.com/999372/666672 目前全球范围内应用比较广泛的负载均衡设备为美国的F5.F5于2000年底进驻中国,在国内业界,F5负载均衡产品 ...
- SpringBoot学习之验证信息国际化
以登录为例: 1.controller的登录方法: @RequestMapping("/SSOAuth/login") @ResponseBody public ResponseV ...
- Allegro PCB中封装焊盘替换操作详解
Allegro PCB中有些功能在某种情况下使用会产生神奇的效果,但有部分人不会或不熟悉在特定情况下使用某些功能来解决问题.如焊盘替换,有些特殊器件(如下图)封装按照datasheet给出的参考制作, ...
- 使用kubernetes 官网工具kubeadm部署kubernetes(使用阿里云镜像)
系列目录 kubernetes简介 Kubernetes节点架构图: kubernetes组件架构图: 准备基础环境 我们将使用kubeadm部署3个节点的 Kubernetes Cluster,整体 ...
- java gc小结
java的内存结构: 1. 堆: java所有通过new新建的对象都是在堆上进行分配的; 根据不同的垃圾回收算法, 堆的结构也不相同, 如果采用的是分代垃圾回收, 那么堆就分为年轻代和年老代两部分. ...
- 【机器学习算法-python实现】PCA 主成分分析、降维
1.背景 PCA(Principal Component Analysis),PAC的作用主要是减少数据集的维度,然后挑选出基本的特征. PCA的主要思想是移动坐标轴, ...
- 2016/08/11 Thinkphp之getField用法总结
getField方法是ThinkPHP中用来获取字段值的方法,区别于select和find方法,通常仅用于获取个别字段的值.但是事实上并没有那么简单,该方法的用法总结如下: 获取某个字段值 这个是ge ...
- 初识kbmmw 中的smartbind功能
关于kbmmw smartbind 的开发原因及思路,大家可以参见官方的博客说明和红鱼儿的翻译. 今天我就实例操作一下,给大家演示一下具体实现. 我们新建一个工程 放几个基本的控件 在单元里面加上引用 ...