refactoring, cleanup
[mp3tohtml.git] / scripts / mp3tohtml
index 0a5719f..156c252 100755 (executable)
 # Released under the terms of the GPLv2 license.
 # (c) 2016 Jean-Philippe Orsini <jeanfi@gmail.com>
 
+import argparse
 import mp3tohtml
-
+import os
+import sys
 
 parser = argparse.ArgumentParser(description='Generate an HTML containing information about the MP3 files.')
 parser.add_argument('dir', help='The directory containing the MP3 files')
@@ -32,53 +34,4 @@ if (args.config is None):
 else:
     cfg_dir = args.config
 
-copy_header(cfg_dir)
-
-files = []
-for root, dirnames, filenames in os.walk(args.dir):
-    for filename in fnmatch.filter(filenames, '*.mp3'):
-        files.append(os.path.join(root, filename))
-
-for f in files:
-    tag = eyeD3.Tag()
-
-    tag.link(f)
-
-    print("\t<tr>")
-
-    print("\t\t<td>" + tag.getArtist().encode("UTF8") + "</td>\n")
-    print("\t\t<td>" + tag.getAlbum().encode("UTF-8") + "</td>")
-    print("\t\t<td>" + tag.getTitle().encode("UTF-8") + "</td>")
-
-    comments = tag.getComments()
-    strComments = ""
-    for c in comments:
-        strComments += c.comment
-
-    p = re.compile("URL: (.*)\r\nComments: (.*)\r\nCurators?: (.*)\r\nCopyright: (.*)")
-    m = p.match(strComments)
-
-    if m is None:
-        url = ""
-        curator = ""
-        copyright = ""
-    else:
-        if m.group(2) == "http://freemusicarchive.org/":
-            strComments = ""
-            url = "<a href=\"" + m.group(1) + "\">FMA</a>"
-        else:
-            strComments =  m.group(2)
-            url = "<a href=\"" + m.group(1) + "\">source</a>"
-
-        curator = m.group(3)
-
-        copyright = fma_copyright_to_html(f, m.group(4))
-
-    print("\t\t<td>" + url + "</td>")
-    print("\t\t<td>" + curator + "</td>")
-    print("\t\t<td>" + copyright + "</td>")
-    print("\t\t<td>" + strComments + "</td>")
-
-    print("\t</tr>")
-
-copy_footer(cfg_dir)
+mp3tohtml.generate(args.dir, cfg_dir)