介绍
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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




