将UTF-8编码的字符串作为CSV上载到云存储

时间:2018-03-21 16:02:55

标签: python csv encoding google-cloud-storage google-cloud-datalab

我正在尝试将pandas数据框作为csv上传到Google云端存储。代码必须上传数据帧的内容,而不管其包含的字符。

我遇到的问题是,当框架包含特殊字符(例如日语符号)时,Google会返回难以解释的错误:

  

异常:无法处理HTTP响应。

代码本身如下:

import datalab.storage as gcs
import pandas as pd
Items_Object = gcs.Bucket('astrologer-2').items(prefix=file_prefix)
     for item in items:
      if not item.key.endswith('/') and item.exists():
        data = StringIO(item.read_from())
        dataFrame = pd.read_csv(data, low_memory=False, sep=',', encoding='utf-8')
        df_string = dataFrame.to_csv(index=False, encoding='utf-8')
        print df_string
        response = item.write_to(df_string, 'text/csv')

item.write_to(df_string,' text / csv')一行会触发错误。

所有代码都是读取CSV并尝试将其内容写回Google云端存储(将来会对内容进行更改)

文件内容为

Nombre,Apellido
Lluís,Gassó
Test,Testson
最高,サートした

我尝试使用&text;简单',' text / plain; encoding = UTF-8',' text / csv; encoding = UTF-8'和' application / octet-stream'他们都没有工作。

有谁知道为什么会发生此错误以及如何解决?提前谢谢。

0 个答案:

没有答案