用于操纵fear.org DDN的命令行工具

pyafraid的Python项目详细描述


PyFerr是一个命令行工具,用于更新ferr.org DDNS服务的IP地址。

安装

pyford可以使用标准的python setup.py install命令安装:

$ [sudo] python setup.py install

用法

安装后,只需运行:

$ pyafraid update|query <username> -p <password> -n <hostname>

或者,如果您想使用sha-1散列而不是 用户名/密码组合键:

$ pyafraid update|query -s <sha_hash> -n <hostname>

有关更详细的用法说明,请使用--help/-h选项:

$ pyafraid -h
Usage: pyafraid.py update|query [-h] [-u <username>] [-p <password>] [-n
<hostname>]


Options:
 -h, --help            show this help message and exit
 -u USERNAME, --username=USERNAME
                       The freedns.afraid.org username
 -p PASSWORD, --password=PASSWORD
                       The associated password
 -n HOSTNAME, --hostname=HOSTNAME
                       The name of the host to update or query
 -s SHA_HASH, --sha-hash=SHA_HASH
                       The SHA-1 hash from the API interface
                       URL. Don't use this with the -u and -p options.

例如,要更新freedns.ferd.org以指向当前IP地址, 使用update参数:

$ pyafraid update -u myuser -p mypass -n mythbox.example.org
  Attempting to update mythbox.example.org...
  response from server:
  ERROR: Address 1.1.1.1 has not changed.

要查询freedns.ferd.org以获取有关帐户的信息,可以使用query参数:

$ pyafraid query -u myuser -p mypass

 url:    http://freedns.afraid.org/dynamic/update.php?<some_hash>
 ip:     1.1.1.1
 desc:   example.org

 url:    http://freedns.afraid.org/dynamic/update.php?<some_other_hash>
 ip:     2.2.2.2
 desc:   deathstar.example.org

请注意,指定-n/--hostname将限制对给定主机的输出。

使用要求

PyForder只在Python2.6上进行了积极的测试,但是应该在Python2.2+上进行一些小的更改。 欢迎使用修补程序:)

开发要求

要执行单元测试(使用“make test”),需要以下模块:
  • 单元测试2
  • 探索
  • 模拟

所有这些模块都可以用easy_install

安装
$ [sudo] easy_install mock unittest2 discover

报告错误

任何错误都可以在github(https://github.com/campbellr/pyafraid/issues/new)上报告 或者发邮件给campbellr@gmail.com

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

推荐PyPI第三方库


热门话题
mysql Spring,AWS,访问远程数据库:java。lang.AbstractMethodError:在组织中为空。springframework。果心命令比较器。findOrder(OrderComparator.java:142)   java什么是“未找到网络:缓存项[url:…]”确切的意思是?   java@EmbeddedId和@Id异常   java从一个数组中获取数据以创建另一个数组。这个循环怎么了?   主方法中的java调用值为10的rect上的scale,然后打印矩形区域   java将数据插入现有记录   出现n位数后的java拆分字符串   java Hibernate验证程序异常   安卓如何从监听器接收结果(java)   在paintbrushtype GUI中,java paintComponent()vs paint()和JPanel vs Canvas   java抛出异常,以便堆栈跟踪不包含某些类类型   java使用哪种语法来提高性能和资源利用率   java My regex搜索只打印出最后一个匹配项   安卓在xml解析中的java视图翻转器示例   java如何维护LDAP系统和关系数据库的完整性?