Skip to main content

DNSPod API v4.6

Project description

DNSPodX

Windows Linux License Python Version

采用面向对象的方式封装DNSPod官方API,尽可能降低调用API的成本,根据官方v4.6版本API开发。

新手上路,请多指教。若有需要请联系我:mailto@wolfbolin.com

完成进度

功能点 进度
帐户相关 xxxxx
获取帐户信息 计划中
修改资料
修改密码
修改邮箱
获取手机验证码
获取用户日志 计划中
获取API版本号 已完成
域名相关 xxxxx
添加新域名 计划中
获取域名列表 已完成
删除域名 计划中
设置域名状态 计划中
获取域名信息
获取域名日志
设置搜索引擎推送
添加域名共享
域名共享列表
修改域名共享
删除域名共享
域名过户
锁定域名
域名锁定解锁
域名绑定列表
添加域名绑定
删除域名绑定
获取域名分组
添加域名分组
修改域名分组
删除域名分组
设置域名分组
设置域名星标
设置域名备注 计划中
获取域名权限
获取等级允许的记录类型
获取等级允许的线路
记录相关 xxxxx
添加记录 已完成
记录列表 已完成
修改记录 已完成
删除记录 已完成
更新动态DNS记录 已合并
设置记录备注 已完成
获取记录信息 已完成
设置记录状态 已合并
批量操作 xxxxx
批量添加域名 计划中
批量添加记录 计划中
批量修改记录 计划中
获取任务详情 计划中

特别提醒

根据Python编程的特性,我们可以在函数响应时返回多个值。因此本Pypi包在响应函数调用时均采用返回两个值的方式,第一个返回值为具体的数值或对象,第二个返回值为API调用后响应的Json数据(已转字典)。

如果文档有不完善之处还请多多包涵,欢迎参考参考示例、阅读源码、提Issue、发邮件。感恩~

账户相关

用户对象

__init__(self, user_id, token)

声明该对象需要传入用户在平台上申请的id与token以组合为调用API的key。

该操作可完成用户对象的创建,为后续的所有操作提供访问凭证。id与token的获取请参考官方文档。

user = DNSPodX.User(user_id, token)

版本信息

version(self)

该操作可返回线上的API版本

api_version = user.version()
print(api_version)

获取域名列表

domain_list(self, offset=0, length=50, domain_type=None, group_id=None, keyword=None)

该操作虽然在域名API列表中,但是因为其与用户信息关系紧密,所以放置于用户类下。该函数的第一个返回值是一个包含域名对象的列表。

user = DNSPodX.User(user_id, token)
domain_list = user.domain_list()[0]

域名相关

域名对象

__init__(self, user, name)

声明该对象需要传入用户对象和一个域名,该参数将初始化一个域名对象的必要信息。

该操作可完成域名对象的创建,之后可使用此对象修改域名的相关信息。

user = DNSPodX.User(user_id, token)
domain = DNSPodX.Domain(user, 'example.com')

获取记录列表

record_list(self, offset=0, length=2000, sub_domain=None, record_type=None, record_line=None, keyword=None)

该操作虽然在记录API列表中,但是因为其与域名信息关系紧密,所以放置于域名类下。该函数的第一个返回值是一个包含记录对象的列表。

user = DNSPodX.User(user_id, token)
domain = DNSPodX.Domain(user, 'example.com')
record_list = domain.record_list()[0]

记录相关

记录对象

__init__(self, user, domain, name, r_type, value, line=None, ttl=None, mx=None, r_id=None, status=None)

声明该对象需要传入用户对象和域名对象,该参数将初始化一个记录对象的必要信息。

同时你还需要传入一些必要的数据来初始化对象,我们认为每个记录都不应该是空的。

user = DNSPodX.User(user_id, token)
domain = DNSPodX.Domain(user, 'example.com')
record = DNSPodX(user, domain, 'www', 'A', '127.0.0.1')

查看信息

detail(self)

此方法区别于info(),此函数仅返回对象中存储的存储数据。不会通过API更新对象的信息。

创建记录

create(self)

此方法将根据对象属性通过API接口创建DNS记录,此时请勿携带record_id参数。

修改记录

modify(self)

此方法将根据对象属性通过API接口修改DNS记录,此时请携带record_id参数。

删除记录

remove(self)

此方法将根据对象属性通过API接口删除DNS记录,此时仅携带record_id参数即可。

添加备注

remark(self, remark)

此方法将通过API接口创建DNS记录备注,此时仅携带record_id参数即可。

获取信息

info(self, r_id)

此方法将通过API接口获取DNS记录信息,此时仅携带record_id参数即可。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DNSPodX-0.0.1.tar.gz (6.7 kB view hashes)

Uploaded Source

Built Distribution

DNSPodX-0.0.1-py3-none-any.whl (7.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page