Skip to main content

Encode any data to emojis

Project description

BaseEmoji

BaseEmoji is a python module for encoding any ASCII string or byte object into emoticons and back. It can be used to hide information in text conversations, e.g. chat or twitter or to display hashes in a graphica/more comparable way.
It supports two codecs: anybase and group256. This module is also the reference implementation of these two codecs.

Made with ❤️ at 36c3!

Install

pip install emojibase

View on PyPi via https://pypi.org/project/emojibase/

Usage

anybase

anybase is a BaseEmoji codec which works by converting the input to the base of the amount of emojis, set by the filter.

import BaseEmoji

e = BaseEmoji.anybase()
e.encode('giv mee emojiiis'.encode())
# ✴️🥎🐑⛈️🈺🚉‭⚕️🚅🇵🇪🥏🥇📍

e.decode('✴️🥎🐑⛈️🈺🚉‭⚕️🚅🇵🇪🥏🥇📍').decode('ascii')
# giv mee emojiiis

group256

This codec distributes all (filtered) emojis to 256 groups. With this, it can encode any ASCII string to emojis.

import BaseEmoji

e = BaseEmoji.group256()
e.encode('giv mee emojiiis')
# 😸😻💖🤨😿🤖🥔🐢🕢🧅🙈😼🥒🕤💸💌

e.decode('😸😻💖🤨😿🤖🥔🐢🕢🧅🙈😼🥒🕤💸💌')
# giv mee emojiiis

Filters

There are currently three filter options for changing the emojis for en/decoding:

  • Groups (e.g. flags)
  • Skin Tone Support
  • Unicode Version
e.set_filter(['Symbols'], False, 12.0)
e.encode('giv mee symbol emojiiis'.encode())
# 📛⭕✳️⬅️✖️⚜️⚜️⬅️➰‼️✖️⚕️❎✔️⬅️⚜️✖️❎✅⭕⭕⭕➰

e.get_groups()
# {'Smileys & Emotion', 'Travel & Places', 'Activities', 'Flags', 'Animals & Nature', 'Symbols', 'People & Body', 'Objects', 'Food & Drink'}

Roadmap

  • Add filter options to encoded data for automatic decoding

Credits

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for emojibase, version 0.0.2
Filename, size File type Python version Upload date Hashes
Filename, size emojibase-0.0.2-py3-none-any.whl (47.4 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size emojibase-0.0.2.tar.gz (24.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page