文章目录
一. Centos上安装chrome,使用headless模式
(1) centos上安装google-chrome-stable
- 教程主要参考: CentOS 7.x环境下搭建: Headless chrome + Selenium + ChromeDriver 实现自动化测试
- 完全安装脚本参考:INSTALLING GOOGLE CHROME ON CENTOS, AMAZON LINUX, OR RHEL (之前找了好多,安装之后报错各种缺依赖,还是循环依赖)
- 如果安装之后还是缺少依赖,参考centos7中puppeteer的相关错误处理 安装一下,然后再安装一下以下的依赖,终于可以看版本了
yum update nss
yum install at-spi2-atk -y
google-chrome-stable --version
查看是否还缺少依赖:
ldd /opt/google/chrome/chrome | grep "not found"
- 查看安装路径:
which google-chrome-stable
- root下启动会报错,需要在非root账户下启动,或者使用无头浏览器模式启动,
/opt/google/chrome/google-chrome --headless
(2) python3下调用headless浏览器
CentOS7下python3 selenium3 使用Chrome的无头浏览器 截取网页全屏图片
(3) python调用e-charts生成图表时,PATH中需要有chromedriver路径。驱动下载参考CentOS7下python3 selenium3 使用Chrome的无头浏览器 截取网页全屏图片
export PATH=xxx:$PATH
python中使用echarts的库pyecharts, 文档在README比较靠后的地方中文文档 。
(4) centos上没有中文字体
图片上中文会显示乱码,参考Linux CentOS 7 安装字体库 & 中文字体
二. 相关错误
1. selenium.common.exceptions.JavascriptException: Message: javascript error: echarts is not defined (Session info: headless chrome=88.0.4324.150)
貌似是网络的原因?pyecharts这个库默认的配置访问不到资源?(过两天再试,自己又好了,哭了)
解决方案:
https://github.com/pyecharts/pyecharts/issues/1683