clean up according to pep8

This commit is contained in:
RRA 2019-09-12 19:18:56 +02:00
parent 6400b2aea2
commit 8529d952cd
3 changed files with 25 additions and 24 deletions

View File

@ -1,16 +1,17 @@
import argparse, os import argparse
import os
from distribusi.distribusi import distribusify from distribusi.distribusi import distribusify
def build_argparser(): def build_argparser():
parser = argparse.ArgumentParser(""" parser = argparse.ArgumentParser("""
distbusi is a content management system for the web that produces static distbusi is a content management system for the web that produces static
index pages based on folders in the files system. It is inspired by the index pages based on folders in the files system.
automatic index functions featured in several popular web servers. It works by It is inspired by the automatic index functions featured in several popular web
traversing the file system and directory hierarchy to automatically list servers. distribusi works by traversing the file system and directory hierarchy
all the files in the directory, detect the file types and providing them with to automatically list all the files in the directory, detect the file types and
relevant html classes and tags for easy styling.""" providing them with relevant html classes and tags for easy styling.""")
)
parser.add_argument( parser.add_argument(
'-d', '--directory', help="Select which directory to distribute", default="." '-d', '--directory', help="Select which directory to distribute", default="."
@ -63,5 +64,5 @@ def build_argparser():
def cli_entrypoint(): def cli_entrypoint():
parser = build_argparser() parser = build_argparser()
args = parser.parse_args() args = parser.parse_args()
distribusify(args, args.directory) distribusify(args, args.directory)

View File

@ -14,15 +14,17 @@ MIME_TYPE = magic.Magic(mime=True)
def caption(image): def caption(image):
try: try:
process = subprocess.Popen(['exiftool', '-Comment', image], stdout=subprocess.PIPE) process = subprocess.Popen(
['exiftool', '-Comment', image], stdout=subprocess.PIPE)
out, err = process.communicate() out, err = process.communicate()
except Exception as e: except Exception as e:
print(e) print(e)
print('Do you have exiftool installed?') print('Do you have exiftool installed?')
try: try:
caption = out.decode("utf-8").split(": ", 1)[1] caption = out.decode("utf-8").split(": ", 1)[1]
except: except Exception as e:
caption = '' caption = ''
print(e)
return caption return caption
@ -43,9 +45,8 @@ def thumbnail(image, name, args):
"<figure><a href='{}'><img class='thumbnail' src='data:image/jpg;base64,{}'></a><figcaption>{}</figcaption></figure>" "<figure><a href='{}'><img class='thumbnail' src='data:image/jpg;base64,{}'></a><figcaption>{}</figcaption></figure>"
).format(name, data_url, cap) ).format(name, data_url, cap)
except Exception as e: except Exception as e:
print('Thumbnailer:',e) print('Thumbnailer:', e)
return "<figure><a href='{}'><img src='{}'></a><figcaption>{}</figcaption></figure>".format(name, name,name) return "<figure><a href='{}'><img src='{}'></a><figcaption>{}</figcaption></figure>".format(name, name, name)
def div(args, type_, subtype, tag, name): def div(args, type_, subtype, tag, name):
@ -62,7 +63,7 @@ def div(args, type_, subtype, tag, name):
elif 'dir' in type_ or 'html' in subtype or 'unkown-file' in subtype: elif 'dir' in type_ or 'html' in subtype or 'unkown-file' in subtype:
html = '<div id="{}" class="{}">{}</div>' html = '<div id="{}" class="{}">{}</div>'
else: else:
html = '<div id="{}" class="{}">{}' + filename +'</div>' html = '<div id="{}" class="{}">{}' + filename + '</div>'
return html.format(id_name, subtype, tag) return html.format(id_name, subtype, tag)
@ -71,7 +72,6 @@ def distribusify(args, directory): # noqa
for root, dirs, files in os.walk(directory): for root, dirs, files in os.walk(directory):
if not args.remove_index: if not args.remove_index:
html = [] html = []
if args.verbose: if args.verbose:
print('Generating directory listing for', root) print('Generating directory listing for', root)
@ -80,10 +80,10 @@ def distribusify(args, directory): # noqa
full_path = os.path.join(root, name) full_path = os.path.join(root, name)
mime = MIME_TYPE.from_file(full_path) mime = MIME_TYPE.from_file(full_path)
# example: MIME plain/text becomes 'type' plain 'subtype' text # example: MIME plain/text becomes 'type' plain 'subtype' text
type_, subtype = mime.split('/') type_, subtype = mime.split('/')
if args.verbose: if args.verbose:
print('Found', name,'as', mime) print('Found', name, 'as', mime)
if type_ in FILE_TYPES: if type_ in FILE_TYPES:
# expansion for different kind of textfiles # expansion for different kind of textfiles
@ -99,7 +99,7 @@ def distribusify(args, directory): # noqa
else: else:
subtype = subtype+' unkown-file' subtype = subtype+' unkown-file'
a = "<a href='{}'>{}</a>" a = "<a href='{}'>{}</a>"
#a = FILE_TYPES[type_] # a = FILE_TYPES[type_]
if type_ == 'image': if type_ == 'image':
caption = name caption = name
@ -121,7 +121,7 @@ def distribusify(args, directory): # noqa
if args.verbose: if args.verbose:
message = 'not in list of file types, adding as plain href: \n' message = 'not in list of file types, adding as plain href: \n'
print(type_, subtype, message, name) print(type_, subtype, message, name)
type_ ='unkown-file' type_ = 'unkown-file'
a = a.replace('{}', name) a = a.replace('{}', name)
html.append(div(args, type_, subtype, a, name)) html.append(div(args, type_, subtype, a, name))
@ -130,7 +130,7 @@ def distribusify(args, directory): # noqa
for name in dirs: for name in dirs:
a = "<a href='{}'>{}/</a>".replace('{}', name) a = "<a href='{}'>{}/</a>".replace('{}', name)
html.append(div(args,'dir', 'dir', a, 'folder')) html.append(div(args, 'dir', 'dir', a, 'folder'))
with open(os.path.join(root, 'index.html'), 'w') as f: with open(os.path.join(root, 'index.html'), 'w') as f:
if not args.no_template: if not args.no_template:

View File

@ -7,8 +7,8 @@ FILE_TYPES = {
'audio': ('<audio controls class="audio">' '<source src="{}"></source></audio>'), 'audio': ('<audio controls class="audio">' '<source src="{}"></source></audio>'),
} }
SUB_TYPES ={ SUB_TYPES = {
'pdf': ( 'pdf': (
'<object data="{}" class="pdf" type="application/pdf">' '<object data="{}" class="pdf" type="application/pdf">'
'<embed src="{}" type="application/pdf" /></object>') '<embed src="{}" type="application/pdf" /></object>')
} }