使用 pygodaddy 模块更新我域的 IP 地址
Using pygodaddy module to update IP address of my domain
我看到 an example that use pygodaddy 更新我域的 IP 地址。
这是 python 脚本(已删除帐户信息):
#!/usr/bin/env python
import logging
import pif
import pygodaddy
LOG_PATH = '/Users/csj/godaddy.log'
logging.basicConfig(filename=LOG_PATH, format='%(asctime)s %(message)s', level=logging.INFO)
GODADDY_USERNAME="MY_LOGIN_ID"
GODADDY_PASSWORD="MYPASSWORD"
client = pygodaddy.GoDaddyClient()
try:
client.login(GODADDY_USERNAME, GODADDY_PASSWORD)
for domain in client.find_domains():
dns_records = client.find_dns_records(domain)
public_ip = pif.get_public_ip()
logging.debug("Domain '{0}' DNS records: {1}".format(domain, dns_records))
# only update if IP not the same with previous one
if public_ip != dns_records[0].value:
client.update_dns_record(domain, public_ip)
logging.info("Domain '{0}' public IP set to '{1}'".format(domain, public_ip))
except Exception, err:
logging.info("Error: %s" % err)
执行脚本后,一切正常。日志如下:
015-02-01 18:00:30,200 Starting new HTTPS connection (1):
dns.godaddy.com 2015-02-01 18:00:31,134 Starting new HTTPS connection
(1): idp.godaddy.com 2015-02-01 18:00:36,779 Starting new HTTP
connection (1): v4.ident.me 2015-02-01 18:00:38,654 Domain 'csj.io'
public IP set to '122.121.103.37'
但是,我查看了godaddy网站的管理器面板,IP地址并没有改变。既不通过 ping 它。
更新我的域名IP地址有什么方便的吗?
或者我可以在脚本上尝试什么?
1 月 18 日修补了 Godaddy 的一个漏洞,它破坏了 PyGodaddy。 Github 上有一个新版本的脚本。
我看到 an example that use pygodaddy 更新我域的 IP 地址。 这是 python 脚本(已删除帐户信息):
#!/usr/bin/env python
import logging
import pif
import pygodaddy
LOG_PATH = '/Users/csj/godaddy.log'
logging.basicConfig(filename=LOG_PATH, format='%(asctime)s %(message)s', level=logging.INFO)
GODADDY_USERNAME="MY_LOGIN_ID"
GODADDY_PASSWORD="MYPASSWORD"
client = pygodaddy.GoDaddyClient()
try:
client.login(GODADDY_USERNAME, GODADDY_PASSWORD)
for domain in client.find_domains():
dns_records = client.find_dns_records(domain)
public_ip = pif.get_public_ip()
logging.debug("Domain '{0}' DNS records: {1}".format(domain, dns_records))
# only update if IP not the same with previous one
if public_ip != dns_records[0].value:
client.update_dns_record(domain, public_ip)
logging.info("Domain '{0}' public IP set to '{1}'".format(domain, public_ip))
except Exception, err:
logging.info("Error: %s" % err)
执行脚本后,一切正常。日志如下:
015-02-01 18:00:30,200 Starting new HTTPS connection (1): dns.godaddy.com 2015-02-01 18:00:31,134 Starting new HTTPS connection (1): idp.godaddy.com 2015-02-01 18:00:36,779 Starting new HTTP connection (1): v4.ident.me 2015-02-01 18:00:38,654 Domain 'csj.io' public IP set to '122.121.103.37'
但是,我查看了godaddy网站的管理器面板,IP地址并没有改变。既不通过 ping 它。
更新我的域名IP地址有什么方便的吗? 或者我可以在脚本上尝试什么?
1 月 18 日修补了 Godaddy 的一个漏洞,它破坏了 PyGodaddy。 Github 上有一个新版本的脚本。