add: 增加redo
This commit is contained in:
parent
ea01fec3f8
commit
a95e3b456a
2
main.py
2
main.py
|
@ -95,7 +95,7 @@ if __name__ == '__main__':
|
|||
__output = "data/data/metadata/person"
|
||||
# TMDB API TOKEN
|
||||
__tmdb_token = "eyJhbGciOiJIUzI1NiJ9.eyJhdWQiOiIxYTU4ODAxMGY5OTUwYWEyNThhYjFhYjJlMjI4NGVmYSIsInN1YiI6IjYxYmRmOGNjMzgzZGYyMDA0MjIzNDhjOSIsInNjb3BlcyI6WyJhcGlfcmVhZCJdLCJ2ZXJzaW9uIjoxfQ.RPG8F8AELlK7MgrXDR2U0YRv61VteZZ9ponilnkQqkE"
|
||||
__mode = "scrape"
|
||||
__mode = "redo"
|
||||
if len(sys_args.keys()) > 0:
|
||||
# 扫描目录
|
||||
__dir_path = sys_args["__dir_path"]
|
||||
|
|
22
redo.py
22
redo.py
|
@ -15,29 +15,31 @@ from tmdb import Tmdb
|
|||
|
||||
|
||||
def __redo(log, output, tmdb_token, language="zh-CN"):
|
||||
log.logger.info("------------------- 开始重新刮削: {0} -------------------".format("./error_tmdb_ids.txt"))
|
||||
|
||||
with open("./error_tmdb_ids.txt", "r") as error_f:
|
||||
error_info = error_f.read()
|
||||
for info in error_info.split(","):
|
||||
info = info.strip()
|
||||
__tmdbid = info.split("-")[2]
|
||||
__actor_name = info.split("-")[0]
|
||||
if "" == info:
|
||||
break
|
||||
__tmdb_id = info.split("-tmdb-")[1]
|
||||
__actor_name = info.split("-tmdb-")[0]
|
||||
__name = __actor_name[0].lower()
|
||||
__full_actor_name = __actor_name + "-tmdb-" + __tmdbid
|
||||
__full_actor_name = __actor_name + "-tmdb-" + __tmdb_id
|
||||
__path_dir = os.path.join(output, __name, __full_actor_name)
|
||||
if not os.path.exists(__path_dir):
|
||||
os.makedirs(__path_dir)
|
||||
# 如果存在元数据则不再进行刮削
|
||||
if "person.nfo" not in os.listdir(__path_dir):
|
||||
Tmdb(log=log, tmdb_id=__tmdbid, actor_path=__path_dir, tmdb_token=tmdb_token,
|
||||
language=language).create_actor_nfo()
|
||||
else:
|
||||
log.logger.info("当前路径已存在person.nfo文件, 跳过刮削:{0}".format(__path_dir))
|
||||
# 如果存在元数据则覆盖刮削
|
||||
Tmdb(log=log, tmdb_id=__tmdb_id, actor_path=__path_dir, tmdb_token=tmdb_token,
|
||||
language=language).create_actor_nfo(redo=True)
|
||||
# 如果存在海报则不再进行刮削
|
||||
if "folder.jpg" not in os.listdir(__path_dir):
|
||||
Tmdb(log=log, tmdb_id=__tmdbid, actor_path=__path_dir, tmdb_token=tmdb_token,
|
||||
Tmdb(log=log, tmdb_id=__tmdb_id, actor_path=__path_dir, tmdb_token=tmdb_token,
|
||||
language=language).get_actor_image()
|
||||
else:
|
||||
log.logger.info("当前路径已存在folder.jpg文件, 跳过刮削:{0}".format(__path_dir))
|
||||
log.logger.info("------------------- 结束重新刮削: {0} -------------------".format("./error_tmdb_ids.txt"))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
17
tmdb.py
17
tmdb.py
|
@ -77,7 +77,7 @@ class Tmdb:
|
|||
plot = plot.replace("\n", "").replace("\r\n", "")
|
||||
return plot
|
||||
|
||||
def create_actor_nfo(self):
|
||||
def create_actor_nfo(self, redo=False):
|
||||
actor_json = {}
|
||||
plot = self.get_actor_plot()
|
||||
actor_json["plot"] = plot
|
||||
|
@ -120,10 +120,19 @@ class Tmdb:
|
|||
person_nfo = os.path.join(self.actor_path, "person.nfo")
|
||||
try:
|
||||
Make(xml_path=person_nfo, data=actor_data).create()
|
||||
# 重做模式下删除重新成功刮削的信息
|
||||
if redo:
|
||||
error_file_read = open("./error_tmdb_ids.txt", "r+")
|
||||
new_read = error_file_read.read().replace(os.path.basename(self.actor_path) + ",", "")
|
||||
error_file_w = open("./error_tmdb_ids.txt", "w")
|
||||
error_file_w.write(new_read)
|
||||
error_file_w.close()
|
||||
except Exception as e:
|
||||
os.remove(person_nfo)
|
||||
error_file = open("./error_tmdb_ids.txt", "w+")
|
||||
error_file.write(os.path.basename(self.actor_path) + ",")
|
||||
error_file.close()
|
||||
# 非重做模式下记录刮削异常信息,重做模式下不再重复记录
|
||||
if not redo:
|
||||
error_file = open("./error_tmdb_ids.txt", "w+")
|
||||
error_file.write(os.path.basename(self.actor_path) + ",")
|
||||
error_file.close()
|
||||
self.log.logger.error(actor_data)
|
||||
self.log.logger.error("当前写入元数据出现异常,路径:{0}, 异常:{1}".format(self.actor_path, e))
|
||||
|
|
Loading…
Reference in New Issue
Block a user