File: base64_conv.py

package info (click to toggle)
python-mpld3 0.3git%2B20140910dfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 2,808 kB
  • ctags: 1,095
  • sloc: python: 3,595; makefile: 187
file content (34 lines) | stat: -rw-r--r-- 783 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""
Quick script to output JS code for including the listed icons in base64

Usage: python base64_conv.py <filenames>
"""
import os
import argparse
import json


def compute_base64_encoding(filename):
    base, suffix = os.path.splitext(filename)
    suffix = suffix.lstrip('.')

    with open(filename, 'rb') as f:
        data = f.read().encode("base64")
    
    return (base, "data:image/{0};base64,{1}".format(suffix, data))


def main():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument("files", nargs='*', type=str)
    args = parser.parse_args()

    encodings = dict([compute_base64_encoding(filename)
                      for filename in args.files])

    print json.dumps(dict(encodings))

if __name__ == "__main__":
    main()