广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python实现一个简单的dnspod
  • 144
分享到

python实现一个简单的dnspod

简单pythondnspod 2023-01-31 02:01:54 144人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

实现一个简单的dnspod解析api:dnspod api地址:https://www.dnspod.cn/docs/records.html#record-create #!/usr/bin/env python # -*- coding

实现一个简单的dnspod解析api


dnspod api地址:https://www.dnspod.cn/docs/records.html#record-create


#!/usr/bin/env python
# -*- coding: utf-8 -*-
__author__ = 'chenmingle'

import urllib2
import urllib
import JSON
import time
import Socket


public_dic={}
public_dic["login_token"]=("%s,%s" % ('access_id','access_key'))
public_dic["fORMat"]="json"
headers={}
headers["User-Agent"]="Mozilla/5.0 (windows NT 10.0; WOW64) AppleWEBKit/537.36 (Khtml, like Gecko) Chrome/60.0.3112.113 Safari/537.36"


def getDomainID(domain):
    url="https://dnsapi.cn/Domain.INFO"
    info=public_dic.copy()
    info["domain"]=domain
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    formatJson=json.load(response)
#    print formatJson["domain"]['id']
#    print formatJson["domain"]
    if formatJson["status"]["code"]!="1":
        return 0
    else:
        return formatJson["domain"]["id"]
    pass
    
    
def getRecordList(domain_id):
    url="Https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
#    print dnsJson
    for i in dnsJson['records']:
        print i['id'],i['type'],i['name'],i['line'],i['line_id'],i['value'],i['ttl'],i['enabled']
        
        
def getRecordID(domain_id,record,line_id):
    url="https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    info["sub_domain"]=record
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
#    print dnsJson
    for i in dnsJson['records']:
        if i['line_id'] == line_id:
            print i['id'],i['type'],i['name'],i['line'],i['value'],i['ttl'],i['status']
            
            
def createRecord(domain_id,sub_domain,record_type,record_line_id,value):
    url="https://dnsapi.cn/Record.Create"
    info=public_dic.copy()
    info['domain_id']=domain_id
    info['sub_domain']=sub_domain
    info['record_type']=record_type
    info['record_line_id']=record_line_id
    info['value']=value
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    print dnsJson
    
    
def updateRecord(domain_id,sub_domain,record_type,record_line_id,value):
    url="https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    for i in dnsJson['records']:
        if i['name'] == sub_domain and i['line_id'] == record_line_id:
        record_id=i['id']
        
        
print record_id
    url="https://dnsapi.cn/Record.Modify"
    info=public_dic.copy()
    info['domain_id']=domain_id
    info['record_id']=record_id
    info['sub_domain']=sub_domain
    info['record_type']=record_type
    info['record_line_id']=record_line_id
    info['value']=value
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    print dnsJson
    
    
def updateRecordLine(domain_id,sub_domain,record_type,line_id,record_line_id,value):
    url="https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    for i in dnsJson['records']:
        if i['name'] == sub_domain and i['line_id'] == line_id:
                record_id=i['id']
                print record_id
    url="https://dnsapi.cn/Record.Modify"
    info=public_dic.copy()
    info['domain_id']=domain_id
    info['record_id']=record_id
    info['sub_domain']=sub_domain
    info['record_type']=record_type
    info['record_line_id']=record_line_id
    info['value']=value
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    print dnsJson
    
    
def statusRecord(domain_id,sub_domain,record_line_id,status):
    url="https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    for i in dnsJson['records']:
        if i['name'] == sub_domain and i['line_id'] == record_line_id:
                record_id=i['id']
    url="https://dnsapi.cn/Record.Status"
    info=public_dic.copy()
    info['domain_id']=domain_id
    info['record_id']=record_id
    info['status']=status
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    print dnsJson
    
    
def deleteRecord(domain_id,sub_domain,record_line_id):
    url="https://dnsapi.cn/Record.List"
    info=public_dic.copy()
    info["domain_id"]=domain_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    for i in dnsJson['records']:
        if i['name'] == sub_domain and i['line_id'] == record_line_id:
                record_id=i['id']
    url="https://dnsapi.cn/Record.Remove"
    info=public_dic.copy()
    info['domain_id']=domain_id
    info['record_id']=record_id
    request=urllib2.Request(url,headers=headers,data=urllib.urlencode(info))
    response=urllib2.urlopen(request)
    dnsJson=json.load(response)
    print dnsJson
    
    
id = getDomainID('xxx.com')
getRecordList(id)
#getRecordID(id,'cml','10=1')
#createRecord(id,'cml','A','0','*.*.*.*')
#updateRecordLine(id,'cml','A','10=1','10=1','*.*.*.*')
#statusRecord(id,'cml','10=1','enabled')
#deleteRecord(id,'cml','10=1')


--结束END--

本文标题: python实现一个简单的dnspod

本文链接: https://www.lsjlt.com/news/186502.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python实现一个简单的dnspod
    实现一个简单的dnspod解析api:dnspod api地址:https://www.dnspod.cn/docs/records.html#record-create #!/usr/bin/env python # -*- coding...
    99+
    2023-01-31
    简单 python dnspod
  • 用Python实现一个简单的WebSoc
    ubuntu下python2.76 windows python 2.79, chrome37 firefox35通过 代码是在别人(cddn有人提问)基础上改的, 主要改动了parsedata和sendmessage这2个函数. 改代码...
    99+
    2023-01-31
    简单 Python WebSoc
  • Python实现一个简单的QQ截图
    目录前言一、需求分析二、截图三、矩形选择四、按钮设置总结前言   毕设有一部分要用到类似QQ截图的功能,这里记录制作过程。因为后期要添加人工智能的功能,所以用py...
    99+
    2022-11-13
  • 用Python实现一个简单的线程池
    线程池的概念是什么?在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是 如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能...
    99+
    2023-01-31
    线程 简单 Python
  • Python写一个简单的api接口的实现
    python框架有很多,例如:Flask,Django,FastAPI 等。本文将使用 Flask 来编写 API 接口。 安装Flask 首先,您需要安装 Flask: pip i...
    99+
    2023-02-14
    Python api接口 Python api
  • Android实现一个简单的单词本
    目录布局设计代码AddDanciActivity.javaDBOpenHelper.java效果图总结本文基于Java实现了一个简单的单词本安卓app,用的是SQLite数据库,包括...
    99+
    2022-11-13
  • 【Python】实现一个简单的区块链系统
    本文章利用 Python 实现一个简单的功能较为完善的区块链系统(包括区块链结构、账户、钱包、转账),采用的共识机制是 POW。 一、区块与区块链结构 Block.py import hashlibfrom datetime import ...
    99+
    2023-09-22
    区块链 python 共识算法
  • Python元类编程实现一个简单的ORM
    目录概述效果步骤结束语完整代码概述 什么是ORM    ORM全称“Object Relational Mapping”,即对象-关系映射,就是把关系数据库的...
    99+
    2023-03-06
    Python元类编程ORM Python ORM
  • Python实现一个简单的验证码程序
      老师讲完random函数,自己写的,虽然和老师示例的不那么美观,智能,但是也自己想出来的,所以记录一下,代码就需要自己不断的自己练习,实战,才能提高啊!不然就像我们这些大部分靠自学的人,何时能学会。还有...
    99+
    2022-06-04
    验证码 简单 程序
  • 用Python实现一个简单的用户系统
    目录前言正文总结前言  如标题所说,这是一个非常简单的程序,并不涉及任何高深的学问,更适合一些刚入手Python的新人研究一下基础内容的用法,此案列对于有些编程经验的人来讲...
    99+
    2022-11-13
  • python实现一个简单的web应用框架
    目录引言写应用框架需要写底层服务器么uwsgi基本使用安装uwsgi配置uwsgiuwsgi常用配置uwsgi启服和停服启动一个demo写一个简单的web应用框架总结引言 本篇文章所...
    99+
    2023-05-18
    python web应用框架 python web
  • 用Python实现一个简单的抽奖小程序
    目录写在前面 实现结果 1 数据拉取2 数据清洗、去重3 中奖数据抽取python 相关知识点总结写在前面  因为粉丝福利,所以想自己写一个抽...
    99+
    2023-05-12
    python抽奖系统 python随机抽奖 python抽奖游戏
  • 使用Python实现一个简单的接口服务
    使用Python实现一个简单的接口服务,可以通过get、post方法请求该接口,拿到响应数据。创建一个api_server.py文件,添加代码如下: import flask, json from flask import reques...
    99+
    2023-01-31
    接口 简单 Python
  • Android怎么实现一个简单的单词本
    这篇文章主要介绍了Android怎么实现一个简单的单词本的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android怎么实现一个简单的单词本文章都会有所收获,下面我们一起来看看吧。本文基于Java实现了一个简单...
    99+
    2023-06-29
  • Python探索之实现一个简单的HTTP服务器
    Python标准库中的BaseHTTPServer模块实现了一个基础的HTTP服务器基类和HTTP请求处理类。这在文章python探索之BaseHTTPServer-实现Web服务器介绍中进行了相关的介绍。...
    99+
    2022-06-05
    简单 服务器 Python
  • Spring实现一个简单的SpringIOC容器
    接触Spring快半年了,前段时间刚用Spring4+S2H4做完了自己的毕设,但是很明显感觉对Spring尤其是IOC容器的实现原理理解的不到位,说白了,就是仅仅停留在会用的阶段,有一颗想读源码的心于是买了一本计文柯的《Spring技术内...
    99+
    2023-05-31
    spring ioc容器 sprin
  • Spring boot实现一个简单的ioc(1)
    前言跳过废话,直接看正文之前参与开发的几个spring的项目,用的版本都3.x, 最近忽然发现spring 5 都快上线了,于是赶紧去关注了下spring的最新动态。发现了spring-boot这个好东西(终于可以从各种错综复杂的xml配置...
    99+
    2023-05-31
    spring boot ioc
  • Python中怎么实现一个简单遗传算法
    今天就跟大家聊聊有关Python中怎么实现一个简单遗传算法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。遗传算法遗传算法是模仿自然选择过程的优化算法。 他们没有使用"数学技...
    99+
    2023-06-16
  • 使用python实现一个简单ping pong服务器
    目录依赖环境客户端/服务器架构介绍什么是客户端/服务器架构如何使用客户端/服务器架构缺点python socket编程写一个最简单的ping/pong服务总结依赖环境 本篇文章所依赖...
    99+
    2023-05-16
    python ping pong服务器 python ping pong
  • 用Python实现一个端口扫描,只需简单
    0、秘密扫描 秘密扫描是一种不被审计工具所检测的扫描技术。 它通常用于在通过普通的防火墙或路由器的筛选(filtering)时隐藏自己。 秘密扫描能躲避IDS、防火墙、包过滤器和日志审计,从而获取目标端口的开放或关闭的信息。由于没有包含...
    99+
    2023-01-30
    只需 简单 端口扫描
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作