UnicodeDecodeError:'charmap'编解码器|安装pip pythonstdnum时出错==1.8

2024-05-16 11:16:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我对编程相当陌生,所以请容忍我

当我为正在使用的模块安装一些必需的软件包时,我无法安装python-stdnum==1.8

我收到以下错误消息:

File "C:\Users\59996\AppData\Local\Programs\Python\Python37\lib\encodings\cp1252.py", line 23, in decode
        return codecs.charmap_decode(input,self.errors,decoding_table)[0]
    UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 967: character maps to <undefined>
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

我还能做些什么来安装这个软件包吗

任何帮助都将不胜感激。提前谢谢


Tags: 模块inpy消息local编程错误users
3条回答

在Windows中安装Odoo依赖项时,我遇到了同样的问题,但经过一番努力,我找到了一个解决方案

这是一个带有stdnum 1.8>stdnum 1.8 installation fails on windows

解决方案

  1. 转到arthurdejong.org/python-stdnum/并找到python-stdnum-1.8.tar.gz

  2. 将Zip下载到文件夹中,将其从python-stdnum-1.8.tar.gz重命名为python-stdnum-1.8.tar_.gz(以避免名称冲突)

  3. 然后创建以下Python脚本(在同一目录中):


import tarfile

def open_tarfile_function(tarfile_file_name):
    open_tarfile=tarfile.open("python-stdnum-1.8.tar_.gz")
    open_tarfile.extractall(path='stdnum')
    open_tarfile.close()

open_tarfile_function('data.tgz')

  1. 它将创建一个名为stdnum的文件夹,打开它,然后打开setup.py,转到第37行并从此处修改:

with open(os.path.join(base_dir, 'README'), 'r') as fp:
    long_description = fp.read()

为此:

with open(os.path.join(base_dir, 'README'), 'rb') as fp:
    long_description = fp.read().decode('utf-8')

保存它

  1. 现在在同一目录中运行以下代码:

import tarfile
import os.path

def make_tarfile(output_filename, source_dir):
    with tarfile.open(output_filename, "w:gz") as tar:
        tar.add(source_dir, arcname=os.path.sep)

output_filename = "python-stdnum-1.8.tar.gz"
source_dir = "stdnum\python-stdnum-1.8"

make_tarfile(output_filename, source_dir)

  1. 这将创建文件python-stdnum-1.8.tar.gz复制绝对路径

  2. 转到Python环境并运行:


pip install D:\Odoo\Odoo_instance_one\python-stdnum-1.8.tar.gz

显然,用绝对路径替换绝对路径

首先,您可以使用在线安装,使用命令pip install python-stdnum==1.8

其次,您可以从here下载python stdnum的whl文件

例如,下载到F:/file

然后使用命令pip install F:/file/python_stdnum-1.15-py2.py3-none-any.whl安装

python-stdnum 1.8是以前的版本,不再有相应的whl文件

一般来说,以前的版本与python版本相对较低,因此如果使用pip install python-stdnum==1.8进行安装,可能会出现问题,因为当前的python版本是3.7,这是相对较新的版本

如果是在Windows上安装Odoo14,则问题出在“requirements.txt”中

将“python stdnum==1.8”更改为“python stdnum==1.8.1”(即使Federico Baù的答案是有效的)

然后会出现另一个问题,因此将“psutil==5.6.6”更改为“psutil==5.6.7” 仍在“requirements.txt”中

资料来源:https://github.com/odoo/odoo/issues/62919

致意

相关问题 更多 >