使用python读取CSV文件时遇到编码问题解决方案

 更新时间:2023年08月14日 08:32:39   作者:myrj  
这篇文章主要介绍了用python读取CSV文件时遇到编码问题,本文给大家分享最优解决方案,通过使用csvkit,它使用自动检测适当的编码和解码,需要的朋友可以参考下

尝试使用python读取CSV文件时遇到障碍。

更新:如果只想跳过字符或错误,可以打开文件,如下所示:

with open(os.path.join(directory, file), 'r', encoding="utf-8", errors="ignore") as data_file:

到目前为止,我已经尝试过了。

for directory, subdirectories, files in os.walk(root_dir):

for file in files:

with open(os.path.join(directory, file), 'r') as data_file:

reader = csv.reader(data_file)

for row in reader:

print (row)

我得到的错误是:

UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to

我试过了

with open(os.path.join(directory, file), 'r', encoding="UTF-8") as data_file:

错误:

UnicodeEncodeError: 'charmap' codec can't encode character '\u2026' in position 223: character maps to

现在,如果我只打印data_file,它说它们是cp1252编码的,但是如果我尝试

with open(os.path.join(directory, file), 'r', encoding="cp1252") as data_file:

我得到的错误是:

UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to

我也尝试了推荐的套餐。

我得到的错误是:

UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to

我要解析的行是:

2015-11-28 22:23:58,670805374291832832,479174464,"MarkCrawford15","RT @WhatTheFFacts: The tallest man in the world was Robert Pershing Wadlow of Alton, Illinois. He was slighty over 8 feet 11 inches tall.","None

任何想法或帮助表示赞赏。

解决方案

我将使用csvkit,它使用自动检测适当的编码和解码。例如

import csvkit
reader = csvkit.reader(data_file)

正如聊天解决方案所述,

for directory, subdirectories, files in os.walk(root_dir):
for file in files:
with open(os.path.join(directory, file), 'r', encoding="utf-8") as data_file:
reader = csv.reader(data_file)
for row in reader:
data = [i.encode('ascii', 'ignore').decode('ascii') for i in row]
print (data)

到此这篇关于用python读取CSV文件时遇到编码问题的文章就介绍到这了,更多相关python读取CSV文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python AutoCAD 系统设置的实现方法

    Python AutoCAD 系统设置的实现方法

    这篇文章主要介绍了Python AutoCAD 系统设置的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • 使用python Fabric动态修改远程机器hosts的方法

    使用python Fabric动态修改远程机器hosts的方法

    今天小编就为大家分享一篇使用python Fabric动态修改远程机器hosts的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • 学习python 的while循环嵌套

    学习python 的while循环嵌套

    这篇文章主要为大家介绍了python 的while循环嵌套,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • 如何向scrapy中的spider传递参数的几种方法

    如何向scrapy中的spider传递参数的几种方法

    这篇文章主要介绍了如何向scrapy中的spider传递参数的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 用Python给图像算法做个简单应用界面

    用Python给图像算法做个简单应用界面

    这篇文章主要介绍了用Python给图像算法做个简单应用界面,帮助大家更好的理解和学习使用python开发gui,感兴趣的朋友可以了解下
    2021-05-05
  • Flask核心机制之上下文源码剖析

    Flask核心机制之上下文源码剖析

    这篇文章主要介绍了Flask核心机制之上下文源码剖析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Python代码生成视频的缩略图的实例讲解

    Python代码生成视频的缩略图的实例讲解

    在本篇文章里小编给大家正里的是一篇关于Python代码生成视频的缩略图的实例讲解,对此有需要的朋友们可以跟着学习下。
    2019-12-12
  • python:解析requests返回的response(json格式)说明

    python:解析requests返回的response(json格式)说明

    这篇文章主要介绍了python:解析requests返回的response(json格式)说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python 三种方法提取pdf中的图片

    python 三种方法提取pdf中的图片

    这篇文章主要介绍了python 三种方法提取pdf中的图片,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-02-02
  • Python urlopen 使用小示例

    Python urlopen 使用小示例

    打开一个网页获取所有的内容、获取Http头、使用代理等小结
    2008-09-09

最新评论