import datetime, os from importlib import import_module fffandoms = ["FF1","FF2","FF3","FF4","FF5","FF6","FF7","FF8","FF9","FFX","FF11","FF12","FF13","FF14","FF15","FF16"] import makeheader import headerfooter def bywords(local=False): # delete existing file if os.path.exists("build/ff/bywords/index.html"): os.remove("build/ff/bywords/index.html") # write header headerfooter.headerwrite("build/ff/bywords/index.html","FF fics by word count","FF fics by word count","
On this page, my FF fics are sorted from longest to shortest. (Fics with translations are listed according to the wordcount of the original version; the wordcount for the translation is normally pretty close to this.)
",False,local) # iterate through fandoms ficlist = [] ficcount = 500 while ficcount > 0: ficcount -= 1 if ficcount < 10: ficcountstring = "00" + str(ficcount) elif ficcount < 100: ficcountstring = "0" + str(ficcount) else: ficcountstring = str(ficcount) if os.path.exists("files/originalsmeta/" + ficcountstring + ".py"): ficfile = "files.originalsmeta." + ficcountstring fileread = import_module(ficfile) try: if fileread.revealdate > datetime.datetime.now(): revealed = False else: revealed = True except: revealed = True if revealed == True: fffic = False for fandom in fileread.fandom: if fandom in fffandoms: fffic = True if fffic == True: sumwords = 0 for instalment in fileread.datewords: sumwords = sumwords + instalment["words"] ficlist.append({"ficno":ficcount,"length":sumwords}) ficlist = sorted(ficlist, key=lambda d: d["length"],reverse=True) # write fic headers for fic in ficlist: makeheader.ficgen(fic["ficno"],False,"build/ff/bywords/index.html",local) # write footer headerfooter.footerwrite("build/ff/bywords/index.html",False,local) if __name__ == "__main__": bywords(True)