Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试将BufferedReader上载到Python中的Azure Blob存储时,base64编码的字符串无效_Python_Csv_Bufferedreader_Azure Blob Storage - Fatal编程技术网

尝试将BufferedReader上载到Python中的Azure Blob存储时,base64编码的字符串无效

尝试将BufferedReader上载到Python中的Azure Blob存储时,base64编码的字符串无效,python,csv,bufferedreader,azure-blob-storage,Python,Csv,Bufferedreader,Azure Blob Storage,你们知道会出什么差错吗?当我尝试将文件夹中的CSV上载到它在第一个CSV中抛出的blob时: 例外情况: base64编码字符串无效:数据字符数(85)不能大于4的倍数 我在任何地方都找不到解决办法 有人知道这里可能出了什么错吗?它以前是有用的 谢谢 您可以检查尝试上载的csv数据的编码: import chardet with open(csv_file,"rb") as data chardet.detect(data) chardet的输出类似于: {'encodi

你们知道会出什么差错吗?当我尝试将文件夹中的CSV上载到它在第一个CSV中抛出的blob时:

例外情况: base64编码字符串无效:数据字符数(85)不能大于4的倍数

我在任何地方都找不到解决办法

有人知道这里可能出了什么错吗?它以前是有用的

谢谢


您可以检查尝试上载的csv数据的编码:

import chardet
with open(csv_file,"rb") as data
chardet.detect(data) 
chardet的输出类似于:

{'encoding': 'EUC-JP', 'confidence': 0.99}

要检测编码的库为:。然后,您可以转换该编码并尝试再次上载

import os import io import glob from base64 import b64decode,b64encode from azure.storage.blob import BlobClient,BlobServiceClient,ContainerClient path=“D:/Git projects/csvs”扩展名='csv'os.chdir(path)#获取仅来自今天的文件结果=glob.glob(“*”+str(今天)+“{}”.format(扩展名))try:blob_service_client=BlobServiceClient.from_connection_string(connect_str)for csv_file in result:#创建一个blob客户端,使用本地文件名作为blob_client=blob_service_客户端的名称。获取blob_客户端(container=,blob=blob_name)#上传创建的文件,打开(csv_文件,“rb”)作为数据:#data=data.read().decode(“utf-8”)#data=data.encode(“utf-8”)blob_客户端。上传_blob(data,overwrite=True),例外情况除外,例如:打印('Exception:')打印(ex)输出:异常:base64编码字符串无效:数据字符数(85)不能大于4的倍数