解决Linux平台Selenium截图中文乱码问题

2021-09-08 14:52:30 浏览数 (1)

通常情况下,像CentOS这样的Linux发行版默认是缺少中文字体的,所以在执行Selenium截图时,如果目标网页中有中文,则截图后中文将会显示为方块一样的乱码。 解决办法:手动安装中文字体即可。

以在CentOS 7中安装中文字体为例,操作步骤如下:

代码语言:javascript复制
# 创建中文字体目录
mkdir -p /usr/share/fonts/chinese/

# 将字体文件拷贝到中文字体目录中
cp songti.ttf /usr/share/fonts/chinese/

cd /usr/share/fonts/chinese/

# 为刚加入的字体设置缓存使之有效
fc-cache -fv

# 查看系统中的字体
fc-list

安装好中文字体之后,再次执行Selenium截图时中文就不会显示为方块了。

上述宋体字体文件(songti.ttf,注意是ttf格式)可以从如下地址下载: http://www.foundertype.com/index.php/FontInfo/index/id/151 方正书宋字体,可以免费商业使用

特别说明: 字体是有版权限制的!为了避免不必要的商业纠纷,尽量使用经过授权或者能免费商用的字体文件。 关于字体的版权介绍,可以参考:字体版权科普篇,你对字体版权了解多少? 。

【参考】 https://cloud.tencent.com/developer/article/1662360 给Linux安装中文字体(解决Selenium截图出现乱码框)

0 人点赞