Docker内Chrome中文乱码的解决方案以及部署360奇安信失败案例

Docker内Chrome中文乱码的解决方案以及部署360奇安信失败案例


背景

搞了一个清明假期, 把chrome安装上去了
可以实现简单的的版本确认

然后想着搞一下国产化的浏览器
突然发现国产化的浏览器的坑是无与伦比的深.

记录一下过程. 

下载

https://www.qianxin.com/ctp/gmbrowser.html
下载: 下载信创X86版(Deb包)

https://browser.360.net/gc/index.html
下载 360安全浏览器 deb 包

https://registry.npmmirror.com/binary.html?path=chromedriver/102.0.5005.27/
下载 102版本的chromedriver

需要可以打包为仅有二进制的模式

dockerfile

FROM ubuntu:24.04
RUN apt update -y
RUN apt install -y systemd
RUN apt-get install -y dbus
RUN dbus-daemon --system
COPY qaxbrowser-safe-stable_1.0.45398.7-1_amd64.deb /root
RUN apt-get install /root/qaxbrowser-safe-stable_1.0.45398.7-1_amd64.deb -y

坑爹的来了

奇安信安装会报错, 提示依赖:xdg-icon-resource
没搞定. baidu google 出来的意义都很小. 

360 可以成功安装上, 坑爹的是:
查看版本出来的事 360的版本 
我TM要用 chromedriver 360的版本没卵用

然后突然想用 headless的方式查看一下具体页面.
结果又被坑了一把

渲染页面

/opt/apps/com.360.browser-stable/files/com.360.browser --headless --disable-gpu --no-sandbox --screenshot=/version.jpg --window-size=1920,1080 se://version
失败..

失败其实分了三层:

第一层: 360 直接报错提升:
ERROR:se_device_id_linux.cc(734)] No mother board serial no. detected
怀疑是360自己的序列号相关的程序. 国产软件还没做好就总想收费. 失望.

第二层: 直接乱码了. 我舱室了下百度都变成了 中文都变成框框

第三层: chrome://version 无法渲染, 干. 路没一条通的

解决乱码

apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy
可以再docker file 里面添加进去

因为我的很多还没有添加python, 我感觉可以一起添加一下就可以了. 

跟 locale 没关系, 百度出来的很多都是糊弄人的.

悲伤的故事 再次浪费 2h
posted @ 2024-04-05 16:23  济南小老虎  阅读(16)  评论(0编辑  收藏  举报