暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

NetBox CSV导出中文乱码问题解决方案

网工格物 2024-05-29
366

介绍

NetBox 在导出CSV的时候,会是使用UTF-8编码,而不是UTF-8-SIG编码。

这样会导致导出的文件,在微软的Excel打开中会乱码。(使用Notepad ++不会)

NetBox 系列文章:https://songxwn.com/categories/NetBox/

思路

直接修改Netbox 虚拟环境的 django_tables2 库的默认编码,这样只要不升级或重装此库就不会失效。

修改

vim /opt/netbox/venv/lib/python3.11/site-packages/django_tables2/export/export.py

# 修改库文件,路径看自己的实际情况。


    FORMATS = {
        CSV: "text/csv; charset=utf-8-sig",
        JSON: "application/json",
        LATEX: "text/plain",
        ODS: "application/vnd.oasis.opendocument.spreadsheet",
        TSV: "text/tsv; charset=utf-8",
        XLS: "application/vnd.ms-excel",
        XLSX: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
        YAML: "text/yaml; charset=utf-8",
    }
    
在第37行,直接修改为utf-8-sig,然后重启NetBox即可。

systemctl restart netbox netbox-rq


文章转载自网工格物,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论