Running this code creates the UnicodeEncodeError
below. Encoding is utf-8 but apparently Python ignores it. I'm using python 2.7.14 on Anaconda2.
try:
aux = pd.read_csv('E:\Python_webscraping_Ahmd/news.csv')
except:
aux = pd.DataFrame(columns=list(news.columns))
aux.to_csv('E:\Python_webscraping_Ahmd/news.csv', encoding= 'utf-8', index=False)
with open('E:\Python_webscraping_Ahmd/news.csv', 'a') as f:
news.to_csv(f, header=False, index=False)
I get error message
UnicodeEncodeErrorTraceback (most recent call last)
<ipython-input-12-8835f23065f2> in <module>()
75
76 if __name__ == '__main__':
---> 77 getDailyNews()
78
<ipython-input-12-8835f23065f2> in getDailyNews()
69
70 with open('E:\Python_webscraping_Ahmd/news.csv', 'a') as f:
---> 71 news.to_csv(f, header=False, index=False)
72
73 cleanData('E:\Python_webscraping_Ahmd/news.csv')
E:\Anaconda\lib\site-packages\pandas\core\frame.py in to_csv(self, path_or_buf, sep, na_rep, float_format, columns, header, index, index_label, mode, encoding, compression, quoting, quotechar, line_terminator, chunksize, tupleize_cols, date_format, doublequote, escapechar, decimal)
1401 doublequote=doublequote,
1402 escapechar=escapechar, decimal=decimal)
-> 1403 formatter.save()
1404
1405 if path_or_buf is None:
E:\Anaconda\lib\site-packages\pandas\io\formats\format.py in save(self)
1590 self.writer = csv.writer(f, **writer_kwargs)
1591
-> 1592 self._save()
1593
1594 finally:
E:\Anaconda\lib\site-packages\pandas\io\formats\format.py in _save(self)
1691 break
1692
-> 1693 self._save_chunk(start_i, end_i)
1694
1695 def _save_chunk(self, start_i, end_i):
E:\Anaconda\lib\site-packages\pandas\io\formats\format.py in _save_chunk(self, start_i, end_i)
1717 quoting=self.quoting)
1718
-> 1719 lib.write_csv_rows(self.data, ix, self.nlevels, self.cols, self.writer)
1720
1721
pandas\_libs\lib.pyx in pandas._libs.lib.write_csv_rows()
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2014' in position 134: ordinal not in range(128)