def _scan_file(self, filename):
     filepath = os.path.join(self.root_path, filename)
     open(filepath, "w+").close()
     controller = NMJUpdater(self.root_path, "popcorn/path/to/the/library")
     controller.search_media_and_add(
         MediaFile(filepath, relative_path=filepath[len(self.root_path):]))
     return controller
Exemple #2
0
	def test_01a(self):
		path = "pilip/polop.avi"
		media_file = MediaFile(path)
		db = DBProxy(self.root_path)
		inserter1 = MovieDBInserter(db, media_file)
		self.assertTrue(db.contains(Videos, path=path))
		inserter2 = MovieDBInserter(db, media_file)
		self.assertEqual(inserter1.video_id, inserter2.video_id)
		self.assertEqual(1, len(db.get_tables_items(Videos)))
Exemple #3
0
 def clean(self):
     videos = self.db.get_tables_items(Videos)
     for video in videos:
         filepath = os.path.join(self.base_dir, video.path)
         if os.path.isfile(filepath):
             continue
         _LOGGER.info("%s should be clean", filepath)
         self.clean_media(
             MediaFile(filepath,
                       relative_path=filepath[len(self.base_dir):]))
Exemple #4
0
	def insertshows(self, db, number):
		for rank in range(number):
			MovieDBInserter(db, MediaFile("pilip/polop%d.avi" % rank))
Exemple #5
0
                        rating="",
                        parental_control="",
                        runtime=0,
                        synopsis="",
                        posters=[],
                        wallpapers=[],
                        persons=[],
                        genres=[])

    def get_details(self, search_result):
        return self.get_details_from_id(search_result.search_id)

    def clean(self, title):
        return MovieCleaner().clean_title(title)


if __name__ == "__main__":  # pragma: no cover
    from nmj.abstract import MediaFile
    from nmj.utils import print_details
    import sys

    logging.basicConfig(level=logging.DEBUG)
    scanner = TMDBScanner()
    #scanner.get_details(MovieSearchResult(160320, "http://d3gtl9l2a4fn1j.cloudfront.net/t/p/original/ejre3MX3Yf8vfjxjkhMV96nBJdp.jpg", "One Day...", "path"))
    result = scanner.get_details(scanner.search(MediaFile(sys.argv[1]))[0])
    print_details(result)
    #pprint(result.wallpapers)
# 	for attr in dir(result):
# 		if not attr.startswith("_"):
# 			print("%s : %s" % (attr, getattr(result, attr)))
	def __test_cleaning(self, basename, show, season="01", episode="01"):
		details = self.scanner.get_details_from_media(MediaFile(basename, basename))
		self.assertEqual(show, details.get("show_name", ""))
		self.assertEqual(season, details.get("season", "01"))
		self.assertEqual(episode, details.get("episode", "01"))
Exemple #7
0
                    title = episode_title,
                    rank = search_result.episode,
                    search_title = self.get_search_title(episode_title),
                    release_date="%s" % episode.FirstAired,
                    rating=episode.Rating,
                    synopsis=episode.Overview,
                    persons=main_actors + guests + director,
                    genres=genres,
                    runtime=0,
                ),
        )

    def clean(self, title):
        return TVShowCleaner().clean_title(title)


if __name__ == "__main__": # pragma: no cover
    import sys
    from nmj.abstract import MediaFile

    logging.basicConfig(level=logging.DEBUG)
    scanner = TTVDB3Scanner()
    for video in sys.argv[1:]:
        search_result=scanner.search(MediaFile(video))
        result = scanner.get_details(search_result[0])
        # print_details(result)
        # print_details(result.show)
        result.season.posters[0].download(".", video)
        result.season.thumbnails[0].download(".", video)
        # print_details(result.episode)
Exemple #8
0
                ttid=show["imdbId"],
                content_id=show["id"],
                title=episode_title,
                rank=search_result.episode,
                search_title=self.get_search_title(episode_title),
                release_date=episode["firstAired"],
                rating=episode["rating"],
                synopsis=episode["overview"],
                persons=main_actors + guests + director,
                genres=genres,
                runtime=0,
            ),
        )

    def clean(self, title):
        return TVShowCleaner().clean_title(title)


if __name__ == "__main__":  # pragma: no cover
    import sys
    from nmj.abstract import MediaFile

    logging.basicConfig(level=logging.INFO)
    scanner = TTVDBScanner()
    search_res = scanner.search(MediaFile(sys.argv[1]))
    result = scanner.get_details(search_res[0])
    # print(result)
    print(type(result.show.release_date))
    # result.show.download_thumbnail()
    #result.show.download_wallpapers()
Exemple #9
0
 def get_details(self, show_id):
     show = self.db.get_first(Shows, id=show_id)
     showvideos = self.db.get_first(ShowsVideos, shows_id=show_id)
     video = self.db.get_first(Videos, id=showvideos.videos_id)
     scanner = self.get_scanner(MediaFile(video.path))
     return scanner.get_details_from_id(show.ttid)
Exemple #10
0
 def create_media_file(self, file_path):
     return MediaFile(file_path,
                      relative_path=file_path[len(self.base_dir):])