コード例 #1
0
 def __init__(self, debug=False):
     self.db     = "DatPiff"
     self.disc   = dbBase(self.db.lower())
     self.artist = artistDP(self.disc)
     self.dutils = datpiffUtils()
     self.dutils.setDiscogs(self.disc)
     self.debug  = debug
     
     ## MultiArtist
     self.mulArts  = multiartist()
     
     print("DatPiff ArtistsDir: {0}".format(self.disc.getArtistsDir()))
     if not isDir(self.disc.getArtistsDir()):
         raise ValueError("Could not find artist dir for DatPiff")
     self.knownDir  = setDir(self.disc.getArtistsDir(), "known")
     if not isDir(self.knownDir):
         print("Make sure that Piggy is loaded!!!")
         raise ValueError("Could not find known [{0}] dir for DatPiff".format(self.knownDir))
     self.knownFile = setFile(self.knownDir, "datPiffKnown.p")
     if not isFile(self.knownFile):
         raise ValueError("Known File [{0}] does not exist".format(self.knownFile))
     
     self.baseURL   = "https://www.datpiff.com/"
     self.searchURL = "https://www.datpiff.com/mixtapes-search?"
     
     super().__init__(self.db, self.disc, self.artist, self.dutils, debug=debug)
コード例 #2
0
ファイル: matchMusicName.py プロジェクト: tgadf/music
    def moveMyMatchedMusicAlbums(self, show=False):
        rename = True
        albumsToMove = getFile(ifile=self.moveFilename)
        print("Found {0} music <-> discogs albums maps".format(
            len(albumsToMove)))

        for db, dbValues in albumsToMove.items():
            if dbValues is None:
                continue
            for artistName, artistAlbums in dbValues.items():
                print("==>", artistName)
                for myAlbumName, albumVals in artistAlbums.items():
                    dirval = albumVals["Dir"]
                    albumVal = albumVals["Album"]
                    ratio = albumVals["Ratio"]

                    dbAlbumName = albumVal["Name"]
                    dbAlbumCode = albumVal["Code"]
                    mediaType = albumVal["MediaType"]

                    matchedDir = setDir(dirval, "Match")
                    mkDir(matchedDir)

                    srcName = myAlbumName
                    srcDir = setDir(dirval, srcName)
                    if not isDir(srcDir):
                        print("{0} does not exist".format(srcDir))
                        continue

                    mediaDir = setDir(matchedDir, self.discConv(mediaType))
                    mkDir(mediaDir)

                    if rename is True:
                        dstName = self.getMatchedDirName(
                            self.discConv(dbAlbumName), dbAlbumCode, db)
                    else:
                        dstName = self.getMatchedDirName(
                            myAlbumName, dbAlbumCode, db)

                    if show is True:
                        print('\t{0}'.format(mediaDir))
                        print("\t\t[{0}]".format(srcName))
                        print("\t\t[{0}]".format(dstName))
                        continue

                    dstDir = setDir(mediaDir, dstName)
                    if isDir(dstDir):
                        print("{0} already exists".format(dstDir))
                        continue

                    print("\tMoving {0}  --->  {1}".format(srcDir, dstDir))
                    moveDir(srcDir, dstDir, debug=True)
コード例 #3
0
 def installData(self):
     if not isDir(self.multiArtistDir):
         print("Install: Making Prefix Dir [{0}]".format(
             self.multiArtistDir))
         mkDir(self.multiArtistDir)
     if not isFile(self.getFilename(fast=True, local=False)):
         print("Install: Creating Prefix Data From Local Data")
         self.writeToMainPickleFromLocalYAML()
コード例 #4
0
 def installData(self):
     if not isDir(self.musicDataDir):
         print("Install: Making Prefix Dir [{0}]".format(self.musicDataDir))
         mkDir(self.musicDataDir)
     if not isFile(self.getFilename(local=False)):
         print("Install: Creating Prefix Data From Local Data")
         fileIO().save(idata=fileIO().get(self.getFilename(local=True)),
                       ifile=self.getFilename(local=False))
コード例 #5
0
ファイル: canada.py プロジェクト: tgadf/movies
    def getCanadaCategoryData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)

        categories = ["Best_Motion_Picture"]
        for category in categories:
            self.downloadCanadaCategoryData(category, outdir, debug)
コード例 #6
0
def getArtistNameDirvalsMap(artistName):
    primeDir   = getPrimeDirectory(artistName)
    dirvals    = []
    for matchedDir in getMatchedDirs():
        primeDirVal = setDir(matchedDir, primeDir)
        possibleDir = setDir(primeDirVal, normalize('NFC', artistName), forceExist=False)
        if isDir(possibleDir):
            dirvals.append(possibleDir)
    return dirvals
コード例 #7
0
    def getBAFTACategoryData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)

        categories = ["Best_Film", "Best_British_Film", "Best_Direction"]
        for category in categories:
            self.downloadBAFTACategoryData(category, outdir, debug)
コード例 #8
0
 def getFilms101YearlyData(self, startYear = 1900, endYear = 2018, debug=False):
     outdir = self.getDataDir()
     if debug:
         print("Data Directory: {0}".format(outdir))
     #outdir = setDir(getBoxOfficeDir(), "data")
     if not isDir(outdir): mkDir(outdir)
     years  = range(int(startYear), int(endYear)+1)
     for year in years:
         self.downloadFilms101YearlyData(year, outdir, debug)
コード例 #9
0
ファイル: wikifilm.py プロジェクト: tgadf/movies
 def getWikiFilmYearlyData(self, startYear=1921, endYear=2017, debug=False):
     outdir = self.getDataDir()
     if debug:
         print("Data Directory: {0}".format(outdir))
     if not isDir(outdir): mkDir(outdir)
     if startYear < 1921:
         raise ValueError("Must start at or after 1921")
     years = range(int(startYear), int(endYear) + 1)
     for year in years:
         self.downloadWikiFilmYearlyData(year, outdir, debug)
コード例 #10
0
 def getArtistMusicDir(self, artistName):
     primeDirs = [setDir(musicDir, self.getPrimeDirectory(artistName)) for musicDir in self.musicDirs]
     artistMusicDirs = [setDir(primeDir, artistName) for primeDir in primeDirs]
     artistMusicDirs = [x for x in artistMusicDirs if isDir(x)]
     if len(artistMusicDirs) > 1:
         raise ValueError("Found more than one artist music directories...")
     elif len(artistMusicDirs) == 1:
         return artistMusicDirs[0]
     else:
         return None
コード例 #11
0
ファイル: razzies.py プロジェクト: tgadf/movies
    def getRazziesCategoryData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)

        categories = [
            "Worst_Picture", "Worst_Actor", "Worst_Actress", "Worst_Director"
        ]
        for category in categories:
            self.downloadRazziesCategoryData(category, outdir, debug)
コード例 #12
0
ファイル: rottentomatoes.py プロジェクト: tgadf/movies
 def getRottenTomatoesYearlyData(self,
                                 startYear=1980,
                                 endYear=2017,
                                 debug=False):
     outdir = self.getDataDir()
     if debug:
         print("Data Directory: {0}".format(outdir))
     if not isDir(outdir): mkDir(outdir)
     years = range(int(startYear), int(endYear) + 1)
     for year in years:
         self.downloadRottenTomatoesYearlyData(year, outdir, debug)
コード例 #13
0
 def __init__(self, debug=False):
     super().__init__()
     self.debug     = debug
         
     self.musicDirs = ["/Volumes/Piggy/Music/Matched"]
     self.musicDirs = [x for x in self.musicDirs if isDir(x)]
     print("My Music Base: {0}".format(self.musicDirs))
     
     ### My Music Directory Names
     self.artistFileCount   = {}
     self.artistAlbums      = {}
     self.artistPrimeDirMap = {}
コード例 #14
0
ファイル: rottentomatoes.py プロジェクト: tgadf/movies
 def downloadRottenTomatoesTop100Data(self, genre, outdir, debug=False):
     baseurl = "https://www.rottentomatoes.com"
     outdir = setDir(self.getDataDir())
     if not isDir(outdir): mkDir(outdir)
     url = "/top/bestofrt/top_100_" + genre + "_movies/"
     url = baseurl + url
     savename = setFile(outdir, genre + ".p")
     if isFile(savename): return
     if debug:
         print("Downloading/Saving {0}".format(savename))
     getWebData(base=url, savename=savename, useSafari=False, dtime=10)
     sleep(2)
コード例 #15
0
ファイル: SAG.py プロジェクト: tgadf/movies
    def getSAGCategoryData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)

        categories = ["Outstanding_Performance_by_a_Cast_in_a_Motion_Picture",
                      "Outstanding_Performance_by_a_Male_Actor_in_a_Leading_Role",
                      "Outstanding_Performance_by_a_Female_Actor_in_a_Leading_Role",
                      "Outstanding_Performance_by_a_Male_Actor_in_a_Supporting_Role",
                      "Outstanding_Performance_by_a_Female_Actor_in_a_Supporting_Role"]
        for category in categories:
            self.downloadSAGCategoryData(category, outdir, debug)
コード例 #16
0
    def getAACTACategoryData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)

        categories = [
            "Best_Film", "Best_Direction", "Best_Actor_in_a_Leading_Role",
            "Best_Actress_in_a_Leading_Role",
            "Best_Actor_in_a_Supporting_Role",
            "Best_Actress_in_a_Supporting_Role"
        ]
        for category in categories:
            self.downloadAACTACategoryData(category, outdir, debug)
コード例 #17
0
ファイル: dbBase.py プロジェクト: tgadf/dbdata
 def createDirnameDirectories(self, savedir, dirnames):
     localdirnames = dict(
         zip(dirnames, [setDir(savedir, x) for x in dirnames]))
     for name, dirname in localdirnames.items():
         if not isDir(dirname):
             print("Creating {0}".format(dirname))
             try:
                 mkDir(dirname, debug=True)
             except:
                 print("Cannot create {0}".format(dirname))
         else:
             if self.debug:
                 print("{0} exists".format(dirname))
     return localdirnames
コード例 #18
0
ファイル: ultimatemovierankings.py プロジェクト: tgadf/movies
 def getUltimateMovieRankingsYearlyData(self,
                                        startYear=2017,
                                        endYear=2017,
                                        debug=False):
     outdir = self.getDataDir()
     if debug:
         print("Data Directory: {0}".format(outdir))
     #outdir = setDir(getBoxOfficeDir(), "data")
     if not isDir(outdir): mkDir(outdir)
     years = range(int(startYear), int(endYear) + 1)
     for year in years:
         if year >= 1988 and year <= 2010:
             continue
         self.downloadUltimateMovieRankingsYearlyData(year, outdir, debug)
コード例 #19
0
ファイル: rottentomatoes.py プロジェクト: tgadf/movies
    def getRottenTomatoesGenreData(self, debug=False):
        outdir = self.getDataDir()
        if debug:
            print("Data Directory: {0}".format(outdir))
        if not isDir(outdir): mkDir(outdir)
        genres = [
            "action__adventure", "animation", "art_house__international",
            "classics", "comedy", "documentary", "drama", "horror",
            "kids__family", "musical__performing_arts", "mystery__suspense",
            "romance", "science_fiction__fantasy", "special_interest",
            "sports__fitness", "television", "western"
        ]

        for genre in genres:
            self.downloadRottenTomatoesTop100Data(genre, outdir, debug)
コード例 #20
0
 def getBoxOfficeMojoWeekendData(self,
                                 startYear=1982,
                                 endYear=1982,
                                 debug=False):
     outdir = self.getDataDir()
     if debug:
         print("Data Directory: {0}".format(outdir))
     #outdir = setDir(getBoxOfficeDir(), "data")
     if not isDir(outdir): mkDir(outdir)
     years = range(int(startYear), int(endYear) + 1)
     weeks = range(1, 53)
     for year in years:
         for week in weeks:
             self.downloadBoxOfficeMojoWeekendData(year, week, outdir,
                                                   debug)
コード例 #21
0
 def __init__(self):
     self.name = "output"
     self.dirval = "/Volumes/Blue/Football"
     if not isDir(self.dirval):
         self.dirval = "/Users/tgadfort/Documents/football"
コード例 #22
0
ファイル: oscar.py プロジェクト: tgadf/movies
 def getCorrectionsDir(self):
     dirname = setDir(self.getMovieDBDir(), "corrections")
     if not isDir(dirname): mkDir(dirname)
     return dirname
コード例 #23
0
ファイル: movieDB.py プロジェクト: tgadf/movies
 def getResultsDir(self):
     dirname = setDir(self.getMovieDBDir(), self.resultsdir)
     if not isDir(dirname): mkDir(dirname)
     return dirname
コード例 #24
0
ファイル: movieDB.py プロジェクト: tgadf/movies
 def getDataDir(self):
     dirname = setDir(self.getMovieDBDir(), self.datadir)
     if not isDir(dirname): mkDir(dirname)
     return dirname
コード例 #25
0
ファイル: movieDB.py プロジェクト: tgadf/movies
 def getMovieDir(self):
     dirname = self.basedir
     if not isDir(dirname): mkDir(dirname)
     return dirname
コード例 #26
0
def main(args):
    
    ########################
    ## Sep
    ######################## 
    if args.sep is not None:
        sep  = args.sep
        print("Delimiter = [{0}]".format(sep))

        if args.files is not None:
            print("Fixing Files not Directories")
            
            for fname in findPattern("./", pattern=args.files):
                fname = fname[2:]
                vals = fname.split(sep)
                if len(vals) >= 2:
                    newName = sep.join(vals[1:])
                    if isFile(fname):
                        if not isFile(newName):
                            moveFile(fname, newName, debug=True)
                        else:
                            print("Cannot move [{0}]".format(fname))
                    else:
                        print("Not moving [{0}] to [{1}]".format(fname, newName))
        else:
            for dname in findDirs("./"):
                dname = dname[2:]
                vals = dname.split(sep)
                if len(vals) >= 2:
                    newName = sep.join(vals[1:])
                    if isDir(dname):
                        if not isDir(newName):
                            moveDir(dname, newName, debug=True)
                        else:
                            print("Cannot move [{0}]".format(dname))
                    else:
                        print("Not moving [{0}] to [{1}]".format(dname, newName))


    ########################
    ## Remove/Replace
    ######################## 
    if args.remove is not None or args.replace is not None:
        print("Remove  = [{0}]".format(args.remove))
        print("Replace = [{0}]".format(args.replace))
        if args.files is not None:
            print("Fixing Files not Directories")
            for fname in findPattern("./", pattern=args.files):
                fname = fname[2:]
                if args.replace is not None:
                    newName = fname.replace(args.remove, args.replace)
                else:
                    newName = fname.replace(args.remove, "")
                if isFile(fname):
                    if not isFile(newName):
                        moveFile(fname, newName, debug=True)
                    else:
                        print("Cannot move [{0}]".format(fname))
                else:
                    print("Not moving [{0}] to [{1}]".format(fname, newName))
        else:
            for dname in findDirs("./"):
                dname = dname[2:]
                if args.replace is not None:
                    newName = dname.replace(args.remove, args.replace)
                else:
                    newName = dname.replace(args.remove, "")                    
                if isDir(dname):
                    if not isDir(newName):
                        moveDir(dname, newName, debug=True)
                    else:
                        print("Cannot move [{0}]".format(dname))
                else:
                    print("Not moving [{0}] to [{1}]".format(dname, newName))
                             

    ########################
    ## Add
    ######################## 
    if args.add is not None:
        print("Add = [{0}]".format(args.add))
        if args.files is not None:
            print("Fixing Files not Directories")
            for fname in findPattern("./", pattern=args.files):
                fname = fname[2:]
                fname = "{0} {1}".format(fname, args.add)
                if isFile(fname):
                    if not isFile(newName):
                        moveFile(fname, newName, debug=True)
                    else:
                        print("Cannot move [{0}]".format(fname))
                else:
                    print("Not moving [{0}] to [{1}]".format(fname, newName))
        else:
            for dname in findDirs("./"):
                dname = dname[2:]
                newName = "{0} {1}".format(dname, args.add)
                if isDir(dname):
                    if not isDir(newName):
                        moveDir(dname, newName, debug=True)
                    else:
                        print("Cannot move [{0}]".format(dname))
                else:
                    print("Not moving [{0}] to [{1}]".format(dname, newName))