cdmon.com上的crud操作库

cdmon-automator的Python项目详细描述


用于cdmon.com上crud操作的python库

此项目将允许您以编程方式在cdmon.com中管理您的域

它是如何工作的?

它在无头模式下运行chrome,并执行手动操作。没有 黑暗魔法也不是晦涩的黑客。

我需要什么?

任何python 3.x(建议增加3.2),带有pip和chrome(无头)

我怎么用?

一个非常基本的用法示例:

fromcdmonimportCDMONcdmon=CDMON()cdmon.login()cdmon.work_on("foo.com")cdmon.create_record("TXT",{"redirect_type":"custom","subdomain":"bar","value":"123456789"})cdmon.work_on("mydomain.com")cdmon.change_record("A","www","127.0.0.1")cdmon.change_record("A","mailcow","1.2.3.4")cdmon.change_record("TXT","@","v=spf1 ...")cdmon.work_on("xyz.com")cdmon.delete_record("TXT","bar")cdmon.terminate()

请记住,库使用环境变量获取登录数据。 您需要提供这些文件,创建一个.env文件或通过任何其他方式。

USERNAME=
PASSWORD=
TIMEOUT=10
DEBUG=True
NETDEBUG=True
  • 用户名-用于登录cdmon.com的用户名/电子邮件
  • 密码-密码
  • 超时-在该时间(秒)后设置硒超时。默认值10
  • debug-如果设置为true它将显示Chrome的用户界面。默认值false
  • netdebug-如果设置为true它将显示urllibdebug到stdout。默认值false

使用详细信息

工作(域名)

您必须在执行任何其他工作之前调用此方法,以便 库知道要在哪个域上执行工作。

创建记录(记录类型、值)

记录类型-要创建的记录类型。它可以是

  • txt
  • spf
  • a
  • aaaa
  • cname
  • mx
  • srv
  • ns

-包含所属记录类型的特定数据的哈希 正在尝试创建。并非所有记录都需要/使用相同(数量)的变量。使用 以下列表确保使用正确的数据。

txt/spf

重定向类型-重定向的类型。它可以是

  • @-整个域
  • *-未定义的子域
  • 自定义-自定义子域

子域-自定义子域。只有当 重定向类型设置为自定义

-记录的值。

示例:

  • 为域本身创建一个txt记录,值为foo bar xyz

    cdmon.create_record("TXT",{"redirect_type":"@","value":"foo bar xyz"})
  • test.mydomain.com创建一个txt记录,值为hi

    cdmon.create_record("TXT",{"redirect_type":"custom","subdomain":"test","value":"hi"})

a/aaaa/cname/ns

重定向类型-重定向的类型。它可以是

  • @-整个域
  • *-未定义的子域
  • 自定义-自定义子域

子域-自定义子域。只有当 重定向类型设置为自定义

目的地-要分配给记录的IP。请注意,库不会阻止您尝试分配无效值。

示例:

  • 为域本身创建一个a记录,指向127.0.0.1

    cdmon.create_record("A",{"redirect_type":"@","destination":"127.0.0.1"})
  • 为域创建aaaa记录,指向127.0.0.1

    cdmon.create_record("AAAA",{"redirect_type":"custom","subdomain":"test","destination":"127.0.0.1"})
  • 为域本身创建一个cname记录,指向www.mydomain.com

    cdmon.create_record("CNAME",{"redirect_type":"@","destination":"www.mydomain.com"})
  • 为域创建ns记录,指向mydomain.com

    cdmon.create_record("NS",{"redirect_type":"custom","subdomain":"test","destination":"mydomain.com"})

SRV

重定向类型-重定向的类型。它可以是

  • @-整个域
  • *-未定义的子域
  • 自定义-自定义子域

子域-自定义子域。只有当 重定向_type设置为自定义

目的地-要分配给记录的目的地。请注意,库不会阻止您尝试分配无效值。

优先级-记录的优先级。

权重-记录的权重。

端口-记录的端口。

示例:

  • 为域本身创建一个srv记录,指向foobar.com 5 800 22

    cdmon.create_record("SRV",{"redirect_type":"@","destination":"foobar.com""priority":"5","weight":"800","port":"22"})
  • 为域mail.mydomain.com创建srv记录,指向smtp.foo.bar 10 200 465

    fromcdmonimportCDMONcdmon=CDMON()cdmon.login()cdmon.work_on("foo.com")cdmon.create_record("TXT",{"redirect_type":"custom","subdomain":"bar","value":"123456789"})cdmon.work_on("mydomain.com")cdmon.change_record("A","www","127.0.0.1")cdmon.change_record("A","mailcow","1.2.3.4")cdmon.change_record("TXT","@","v=spf1 ...")cdmon.work_on("xyz.com")cdmon.delete_record("TXT","bar")cdmon.terminate()
    0
<

子域-子域。

目的地-要分配给记录的目的地。请注意,库不会阻止您尝试分配无效值。

优先级-记录的优先级。

示例:

  • 为域mail.mydomain.com创建MX记录,指向foobar.com 10

    fromcdmonimportCDMONcdmon=CDMON()cdmon.login()cdmon.work_on("foo.com")cdmon.create_record("TXT",{"redirect_type":"custom","subdomain":"bar","value":"123456789"})cdmon.work_on("mydomain.com")cdmon.change_record("A","www","127.0.0.1")cdmon.change_record("A","mailcow","1.2.3.4")cdmon.change_record("TXT","@","v=spf1 ...")cdmon.work_on("xyz.com")cdmon.delete_record("TXT","bar")cdmon.terminate()
    1

更改记录(自我、记录类型、记录名称、值)

此方法将允许您更新记录的字段。值与 规则作为来自创建记录方法。

注意,不能更新记录的子域,只能更新 领域。cdmon.com就是这样工作的。

删除记录(记录类型、记录名称)

此方法将允许您删除记录。请注意,搜索基于 类型和名称(子域),这意味着它在 同一类型同一子域上有多条记录的情况 例如,在@域中存在多个txt记录。

终止()

将关闭/退出Chrome。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java OpenShift的齿轮特性   java如何在Liferay站点的每个页面上放置公司地址和电话?   java确定整数数组中是否存在一个子集,在两个条件下求和到给定的目标值   序列化为什么java中的serialVersionUID必须是静态的、最终的、长类型的?   java响应返回null   java注入接口实现Quarkus   java我不明白为什么第二次排序的运行时间比第一次慢?   (Java)显示图像的最佳方式?   java Android应用程序因添加布局而崩溃   java如何在运行时获取泛型变量的类   java Selenium web驱动程序:无效的选择器:*:WebKitFullScreenSentor   Spring中的java注入值始终为空   Eclipse中带有TestNG插件的@BeforeSuite和@AfterSuite的java问题   使用trycatch块、filewriter和printwriter在java中创建自定义类   如何在Java 安卓上绘制相交的两条线