tonglin0325的个人主页

Python爬虫——基于ubuntu-desktop的selenium爬虫

基于`selenium``/standalone-chrome```镜像启动的容器环境,没有linux桌面,如果使用vnc连上去之后,如果在可视化界面上做一些操作的话,是不支持的。

有一个解决方案就是使用linux桌面镜像+自行安装chrome环境的方式,既可以使用selenium控制chrome浏览器,也可以在linux桌面上进行一些可视化操作,比如创建文件夹,运行可执行快捷方式等。

这里使用的镜像是 dorowu/ubuntu-desktop-lxde-vnc,是一个ubuntu桌面镜像,使用的LXDE桌面,版本较老,但是比较轻量,对比其他桌面,如下

|特性|XFCE|LXQt|LXDE
|——
|基础组件|GTK3|Qt5|GTK2
|性能|中等轻量|最轻量|最轻量(但老旧)
|启动速度|快|很快|很快
|兼容性|高,成熟|新但稳定|老旧,已不维护
|外观|稍现代,有主题支持|现代,类似 KDE 风格|过时界面
|内存占用(冷启动)|250–350MB|180–250MB|~150–200MB
|桌面体验|完整、成熟|简洁、现代|极简(不推荐新项目)
|维护状态|活跃(2025 仍在更新)|活跃(Lubuntu 默认桌面)|停止维护(迁移到 LXQt)
|VNC 兼容性|✅ 非常好|✅ 好|⚠️ 偶有显示异常
|推荐用途|通用桌面 / 稳定生产环境|超轻量容器 / 云桌面|老版本兼容场景

 dorowu/ubuntu-desktop-lxde-vnc 最新的ubuntu版本是22.04,虽然已经有几年没有更新,但是也不算非常过时

1.拉取镜像

1
2
docker pull dorowu/ubuntu-desktop-lxde-vnc:focal

2.启动容器

1
2
docker run -d -p 6080:80 -p 5900:5900 -e VNC_PASSWORD=mypassword -v /dev/shm:/dev/shm dorowu/ubuntu-desktop-lxde-vnc:focal

可以使用vnc通过5900端口连上ubuntu桌面

图片

也可以通过浏览器使用6080端口,在web上访问ubuntu桌面

图片