- 更新apt-get
sudo apt-get update
- 下载最新版本谷歌浏览器
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
- 安装下载好的谷歌浏览器
sudo dpkg -i google-chrome-stable_current_amd64.deb
如果这步因为一些依赖包没有成功,就执行一边 sudo apt-get install -f ,再执行上面的命令安装谷歌浏览器。安装完浏览器记住自己安装的版本号,如下图是我的:79.0.3945.88-1
- 安装xvfb
sudo apt-get install xvfb
这个工具是为了让我们可以无界面运行谷歌浏览器。
- 查看google浏览器
- 安装chromedriver
下载chromedriver的安装包,直接访问地址:http://chromedriver.storage.googleapis.com/index.html 去下载自己浏览区对应的版本,如果找不到自己浏览器对应的版本,就找个比较接近的版本就行了,比如我这边的谷歌版本号是79.0.3945.88-1,但是网站上并没有找个版本对应的驱动,所以我选择了79.0.3945.36这个文件夹,找到对应的linux,执行下面命令:
sudo wget http://chromedriver.storage.googleapis.com/79.0.3945.88/chromedriver_linux64.zip
- 解压此文件
sudo apt-get install unzip
unzip chromedriver_linux64.zip
- 配置驱动
sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
chromedriver --version #可以查看安装的版本号
- 安装selenium
- 测试是否可以运行selenium
执行一下,发现屏幕上输出了百度的html代码,至此大功告成。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
req_url = "https://www.baidu.com"
chrome_options=Options()
#设置chrome浏览器无界面模式
chrome_options.add_argument('--headless')
browser = webdriver.Chrome(chrome_options=chrome_options)
# 开始请求
browser.get(req_url)
#打印页面源代码
print(browser.page_source)
#关闭浏览器
browser.close()
#关闭chreomedriver进程
browser.quit()
补充
- [Ubuntu解决报错]Can not connect to the Service chromedriver
解决方案:在hosts文件中添加以下信息:
127.0.0.1 localhost