研究了一些青龙面板部署任务的问题,想运行selenium使用chrome模拟点击和浏览。
0.问题
青龙里的系统既没有yum也没有apt,无法安装selenium,无法安装chrome
1.思路
当时有几种思路:
1:更换青面板的源系统,个人感觉不太现实,如果有大佬可以,请不吝赐教。
2:用青龙面板里的依赖安装尝试。
2.解决方案
发现其实青龙里的linux系统是轻量级的Alpine Linux 镜像,因此安装命令不是yum也不是apt,而是apk,具体命令可以自行百度。
1.selenium安装
这个是python包,可以放在最后安装,在docker里安装,首先还是要检查是不是有pip,也可直接在依赖管理python中安装。
安装selenium中遇到以下报错:
#include <Python.h> | ^~~~~~~~~~ compilation terminated. error: command 'gcc
这个是缺少build-base,可以在依赖管理的Linux中安装。还是不行的话再安装python3-dev。
还有一种错误,这个是缺少libffi-dev,同样的安装方式。
include <ffi.h> | ^~~~~~~ compilation terminated.
以上三个依赖都直接装上比较保险。
2.chrome相关
其实windows的chrome和chromedriver与linux不同,linux的是chromium及相应的-chromedriver
运行
apk search chromium
可以找到这两个包
运行两个对应的安装命令
apk add chromium
apk add chromium-chromedriver
即可安装,因为仓库中的版本很固定,不需要手动选择对应版本
3.安装成功
尝试验证
# -*-coding: utf-8 -*-
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--disable-dev-shm-usage')
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://www.baidu.com')
print(driver.title)
百度一下,你就知道
版权归原作者 北风催呀催 所有, 如有侵权,请联系我们删除。