2016-11-28 56 views
-2

我試圖使用python從mysql數據庫中提取一些數據,但我遇到特殊字符的問題(數據是FR,ES,De和IT語言中的字符串) 。每當一個詞有一個特殊字符(如重音A N等)沒有文件(我創建與提取數據的CSV) 這正確編碼爲我所用的代碼如何閱讀在python中使用UTF-8編碼的特殊字符

import mysql.connector 
if __name__ == '__main__': 

    cnx = mysql.connector.connect(user='user', password='psswrd', 
           host='slave', 
           database='DB', 
           buffered=True) 
    us_id_list = ['496305'] 

    f = open('missing_cat_mappings.csv', 'w') 
    for (us_id) in us_id_list: 
     print us_id 
     mapping_cursor = cnx.cursor() 
     query = (format(user_id=us_id,)) 
     success = False 
     fails = 0 
     while not success: 
      try: 
       print "try" + str(fails) 
       mapping_cursor.execute(query) 
       success = True 
      except: 
       fails += 1 
       if fails > 10: 
        raise 

     for row in mapping_cursor: 
      f.write(str(row) + "\n") 

     mapping_cursor.close() 
    f.close() 

    cnx.close() 

我補充說:

#!/usr/bin/python 
# vim: set fileencoding=<UTF-8> : 

在開始,但它沒有任何區別。

+0

無處的代碼你指定的編碼爲UTF-8這樣應該怎麼蟒蛇知道嗎? – runDOSrun

回答

0

基本上你將需要open以二進制方式CSV文件,'wb'不文本模式'w'