首页 > 编程语言 >python采集数据保存csv, 文件内容乱码了怎么解决?

python采集数据保存csv, 文件内容乱码了怎么解决?

时间:2023-09-12 16:35:19浏览次数:46  
标签:文件 编码方式 utf python writer 乱码 unicode csv

如果你的 Python 程序采集到的数据在保存成 CSV 格式的文件时出现了乱码,那么可尝试以下解决方法:

1. 在打开 CSV 文件时指定编码方式

你可以使用 Python 中的 open() 函数打开 CSV 文件,并在 open() 函数中指定文件编码方式为 CSV 文件原始编码方式。如果 CSV 文件原始编码方式为 UTF-8,则可以在 open() 函数中指定编码方式为 "utf-8-sig"。示例代码如下:

import csv

with open('output.csv', 'w', newline='', encoding='utf-8-sig') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerow(['列1', '列2'])
    writer.writerow(['a', '1'])
    writer.writerow(['b', '2'])
# Python学习交流裙:708525271

 

在这个示例中,我们打开 output.csv 文件,并将编码方式指定为 "utf-8-sig",并使用 csv.writer() 函数向文件中写入数据。

2. 将数据转换成 Unicode 编码

在将数据写入 CSV 文件之前,将数据转换成 Unicode 编码也是一种常见的解决方法。你可以使用 Python 中的 unicode() 函数将字符串类型的数据转换成 Unicode 编码,示例代码如下:

import csv

with open('output.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerow([unicode('列1', 'utf-8'), unicode('列2', 'utf-8')])
    writer.writerow([unicode('a', 'utf-8'), unicode('1', 'utf-8')])
    writer.writerow([unicode('b', 'utf-8'), unicode('2', 'utf-8')])

 

在这个示例中,我们将字符串类型的数据使用 unicode() 函数转换成 Unicode 编码,然后使用 csv.writer() 函数向文件中写入数据。

标签:文件,编码方式,utf,python,writer,乱码,unicode,csv
From: https://www.cnblogs.com/hahaa/p/17655385.html

相关文章

  • day七-Python之路 - 面向对象学习编程进阶
    Python之路,Day7-面向对象编程进阶 本节内容:面向对象高级语法部分经典类vs新式类静态方法、类方法、属性方法类的特殊方法反射异常处理Socket开发基础作业:开发一个支持多用户在线的FTP程序面向对象高级语法部分经典类vs新式类把下面代码用python2......
  • python3 pip3 安装python-ldap失败
    pip3安装时提示ERROR:Couldnotbuildwheelsforpython-ldap,uWSGI,M2Crypto,whichisrequiredtoinstallpyproject.toml-basedprojectsERROR:CouldnotbuildwheelsforuWSGI,whichisrequiredtoinstallpyproject.toml-basedprojects需要apt-getinstall......
  • Python 压缩文件夹
    Python压缩文件夹生成测试文件夹可以先使用该脚本生成测试文件夹,也可以直接用自己的文件夹importosimportshutildefmain():shutil.rmtree('AAA')os.makedirs("AAA")os.makedirs("AAA/BBB")os.makedirs("AAA/BBB/EEE")os.makedirs("......
  • Python3 JSON 数据解析
    JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。Python3中可以使用json模块来对JSON数据进行编解码,它包含了两个函数:json.dumps(): 对数据进行编码。json.loads(): 对数据进行解码。在json的编解码过程中,Python的原始类型与json类型会相互转......
  • python中借助列表实现文本转置
     001、[root@pc1test01]#lsa.fatest.py[root@pc1test01]#cata.faATCCGGGCATGGAAGCTTGGATGCATGG[root@pc1test01]#cattest.py#!/usr/bin/envpython3#-*-coding:utf-8-*-in_file=open("a.fa","r")file=in_file.readli......
  • python开发之个微的二次开发
    简要描述:取消消息接收请求URL:http://域名地址/cancelHttpCallbackUrl请求方式:POST请求头Headers:Content-Type:application/json参数:参数名类型说明codestring1000成功,1001失败msgstring反馈信息成功返回示例{"message":"成功","code":"1000","data":......
  • Python爬虫-IP隐藏技术与代理爬取
    在进行爬虫程序开发和运行时,常常会遇到目标网站的反爬虫机制,最常见的就是IP封禁,这时需要使用IP隐藏技术和代理爬取。一、IP隐藏技术IP隐藏技术,即伪装IP地址,使得爬虫请求的IP地址不被目标网站识别为爬虫。通过IP隐藏技术,可以有效地绕过目标网站对于特定IP地址的限制。随机User-Agent......
  • Python学习 -- 正则表达式(re模块)
    正则表达式是一种强大的模式匹配工具,用于在文本中查找和匹配特定模式的字符串。在Python中,我们可以使用re模块来操作和处理正则表达式。本篇技术博客将介绍正则表达式的基础语法和re模块的详细使用方法,并通过具体的代码案例来帮助初学者快速掌握正则表达式的使用。正则表达式基础语......
  • Python爬虫实战:分析在线视频平台数据
    当涉及抓取和分析在线视频平台数据时,Python爬虫是一个强大而有用的工具。下面我将为您提供一些步骤和代码示例,来帮助您进行这样的实战操作。1.确定目标平台:首先,您需要确定要抓取和分析数据的在线视频平台。常见的在线视频平台包括YouTube、B站、优酷等。不同平台可能有不同的数据抓......
  • Python数据采集:如何安全登录认证
    在进行数据采集时,有时会遇到需要处理验证码和登录认证的情况。下面我将为您介绍一些如何安全登录认证的常用方法。处理验证码:1.使用第三方库:可以使用一些第三方库来自动识别和处理验证码,如`pytesseract`和`Pillow`。这些库可以对验证码进行图像处理、文字识别等操作,从而自动提取出......