Skip to content

Drakekin/hipku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hipku

A tiny python module to encode IPv6 and IPv4 addresses as haiku.

A port of the javascript library described at http://gabrielmartin.net/projects/hipku

Installation

pip install hipku

Usage

from hipku import encode
from ipaddress import ip_address

encode(ip_address(u"254.53.93.114"))
# 'The weary red dove\nfights in the empty tundra.\nJasmine petals dance.'

decode("Wrong rams and numb wraiths\ndrown proud pink rich ace ace ants.\nAce ants aid ace ants.")
# ip_address(u"fdae:85fd:579a:8da5:0:0:0:0")

encode() takes an ip_address object from the ipaddress module, available in python 3.3+ in the stdlib or available from pip as a backported library (and included in the requirements for python 2.7 - python 3.2.

decode() takes a string and returns an ip_address object. It ignores all punctuation and treats all whitespace identically. Both the following invocations return the same result.

decode("Wrong rams and numb wraiths\ndrown proud pink rich ace ace ants.\nAce ants aid ace ants.")
# ip_address(u"fdae:85fd:579a:8da5:0:0:0:0")

decode("Wrong rams and numb wraiths drown proud pink rich ace ace ants Ace ants aid ace ants")
# ip_address(u"fdae:85fd:579a:8da5:0:0:0:0")

Releases

No releases published

Packages

No packages published

Languages