selenium exceptions

python selenium 运行 抛错 归总

1. Message: connection refused

查看geckodriver.log 如果出现Error: GDK_BACKEND does not match available displays
说明需要安装 虚拟屏幕。

1
2
3
# 安装
pip install pyvirtualdisplay (用于selenium 脚本在crontab之类,后台运行时,调用xvfb虚拟屏幕)
yum install xorg-x11-server-Xvfb (用于系统层虚拟屏幕)

1
2
3
4
5
6
7
8
9
调用
from pyvirtualdisplay import Display
display = Display(visible=0, size=(1280, 720))
display.start()
## program code ##
display.stop()

一定在最程序结束时,使用 display.stop(),否则 xvfb进程不会停止,造成内存泄漏。