Я создаю персональную телешоу и базу данных фильмов, и я использую Python для получения информации о телешоу и фильмах. У меня есть файл для получения информации о фильмах в папке, которая отлично работает.Переписывающий файл Python вместо добавления
У меня также есть файл Python, который получает информацию о телешоу (это папка, например Game of Thrones
), а также получает все файлы эпизодов из папки и получает информацию для них (она отформатирована так: : например Game of Thrones;3;9
))
Вся эта информация хранится в 2 текстовых файлах, которые MySQL может читать: tvshows.txt
и episodes.txt
.
Python легко получает информацию о телешоу в первой части программы.
Вторая часть программы, чтобы получить каждый эпизод в ТВ-шоу папку и хранить информацию в файле (episodes.txt
):
def seTv(show):
pat = '/home/ryan/python/tv/'
pat = pat + show
epList = os.listdir(pat)
fileP = "/home/ryan/python/tvtext/episodes.txt"
f = open(fileP, "w")
print epList
hdrs = ['Title', 'Plot', 'imdbRating', 'Season', 'Episode', 'seriesID']
def searchTvSe(ep):
ep = str(ep)
print ep
seq = ep.split(";")
print seq
tit = seq[0]
seq[0] = seq[0].replace(" ", "+")
url = "http://www.omdbapi.com/?t=%s&Season=%s&Episode=%s&plot=full&r=json" % (seq[0], seq[1], seq[2])
respo = u.urlopen(url)
respo = json.loads(str(respo.read()))
if not os.path.exists("/var/www/html/images/"+tit):
os.makedirs("/var/www/html/images/"+tit)
imgNa = "/var/www/html/images/" + tit + "/" + respo["Title"] + ".jpg";
for each in hdrs:
#print respo[each] # ==== This checks to see if it is working, it is =====
f.write(respo[each] + "\t")
urllib.urlretrieve(respo["Poster"], imgNa)
for co, tt in enumerate(epList):
f.write("\N \t" + str(co) + "\t")
searchTvSe(tt)
f.write("\n")
f.close()
fullTv()
Вторая часть работает только один раз, и у меня есть 3 папки внутри папка tv
(Game of Thrones
, Breaking Bad
, The Walking Dead
) и внутри этих файлов - один эпизод из серии (Game of Thrones;3;4
, Breaking Bad;1;1
, The Walking Dead;3;4
).
Это работало отлично, прежде чем я добавил «seriesID» и изменил файлы (до того, как у меня был текстовый файл для каждой папки, который был необходим, поскольку у меня была таблица для каждого ТВ-шоу).
В episodes.txt
информация для игры Престолов является единственной, которая появляется. Я удалил папку Game of Thrones, и кажется, что последний, который нужно обыскать, является единственным, который был добавлен. Кажется, это переписывает?
Спасибо.
Вы открываете файл с аргументом '' w'' (переписать или создать). Вероятно, вы должны попробовать '' a'' (добавить в конец) или ' – ForceBru