Здравствуйте! Не могу понять как сделать что бы цикл не прерывался после ошибки? А продолжал запись оставшихся.
with open('base.txt', 'w') as fds:
fds.write('url | name |old \n')
for line in profiles:
try:
fds.write(str(line['url'])+' | '+str(line['name'])+' | '+str(line['old'])+'\n')
except e:
fds.write(str(line['url']))
fds.close
Он у тебя вообще хоть что-то записывает? Что такое profiles? Если это каким-то образом список с вложенными словарями, то зачем использовать try/except? Что ты ими пытался поймать? KeyError? Если KeyError и твой словарь line не всегда содержит 3 ключа, то попробуй проверять это через
if len(line) > 1:
fds.write(......)
else:
fds.write(......)
profiles это массив данных (url,name,old). Проблема в том, что в (name или old ) raw поток. и могут содержаться не допустимые символы кодировки, которые при записи в файл с кодировкой UTF-8 и создается исключение. Но при этом в разделе (url) нет таких данных и записываются спокойно. Смысл был в том, что бы при возникновение ошибки записать (url), а оставшиеся данные пропустить (name,old).