生成word图片在linux上无效,pyecharts在CentOS下生成图片遇到的问题

博主在Windows下使用pyecharts生成统计图表为图片并插入Word文档,但在迁移到Linux(CentOS)时遇到错误。通过安装依赖包和修改pyppeteer设置解决了浏览器关闭异常问题,同时为解决中文乱码,安装了fontconfig并导入了所需字体。最终成功在Linux环境下运行脚本并避免了中文乱码。
摘要由CSDN通过智能技术生成

最近在做一份数据报表,想把统计图渲染成图片,然后插入到word文档中,做简单分析。

pyecharts不用写前台页面,也提供了图片渲染方法,是理想中的那个他~

pyecharts生成图片有3种方法,我选了snapshot-pyppeteer,在windows下开发的,一路下来很顺畅,移到linux(CentOS)上时出现了下面这2个错误:

raise BadStatusLine(line)

http.client.BadStatusLine: GET /json/version HTTP/1.1

pyppeteer.errors.BrowserError: Browser closed unexpectedly:

解决办法:

先把依赖包装好,如下

yum install pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 -y

yum install ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc -y

修改snapshot_pyppeteer下的snapshot,添加 --no-sandbox

454ec5d5de1e

此时,脚本已经能正常运行了,但是生成图片后发现中文乱码了

454ec5d5de1e

解决办法:

安装fontconofig

yum -y install fontconfig

在/usr/share/fonts下新建文件夹chinese,从windows的C:\windows\fonts下把需要的字体拷贝出来,上传到刚新建的文件夹下

修改chinese目录权限:

chmod -R 755 /usr/share/fonts/chinese

安装ttmkfdir,并生成fonts.scale文件

yum -y install ttmkfdir

ttmkfdir -e /usr/share/X11/fonts/encodings/encodings.dir

修改字体配置文件

vi /etc/fonts/fonts.conf

找到“”,增加一行:

清除缓存

fc-cache

后记:

在第一个问题上磕了很久,有尝试过非root权限用户使用chromium,看到 “--no-sandbox”时不知道怎么添加。。。如果是先接触过pyppeteer,可能这个问题就变得简单了——“关闭沙盒模式”。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值