У меня возникла проблема с кодом в Python 2.7, я уже использовал UTF-8, но он все еще получил исключение
"UnicodeEncodeError: 'ascii' codec can't encode character u'\xe4' in position 81: ordinal not in range(128)"
Мои файлы содержат столько дерьма, но по какой-то причине мне не разрешено его удалять.
desktop,[Search] Store | Automated Titles,google / cpc,Titles > Kesäkaverit,275285048,13
Я попробовал описанный ниже метод, чтобы избежать, но все же не смог это исправить. Кто-нибудь может мне помочь?
1. С "#!/usr/bin/python" in my file header
2.Настройка setdefaultencoding
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
3. content = unicode(s3core.download_file_to_memory(S3_PROFILE, S3_RAW + file), "utf-8", "ignore")
Мой код ниже
content = unicode(s3core.download_file_to_memory(S3_PROFILE, S3_RAW + file), "utf8", "ignore")
rows = content.split('\n')[1:]
for row in rows:
if not row:
continue
try:
# fetch variables
cols = row.rstrip('\n').split(',')
transaction = cols[0]
device_category = cols[1]
campaign = cols[2]
source = cols[3].split('/')[0].strip()
medium = cols[3].split('/')[1].strip()
ad_group = cols[4]
transactions = cols[5]
data_list.append('\t'.join(
['-'.join([dt[:4], dt[4:6], dt[6:]]), country, transaction, device_category, campaign, source,
medium, ad_group, transactions]))
except:
print 'ignoring row: ' + row