前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装Chrome(Headless)并在python中使用

安装Chrome(Headless)并在python中使用

作者头像
wo.
发布2021-06-15 10:41:58
3.5K0
发布2021-06-15 10:41:58
举报
文章被收录于专栏:了不得的专栏

Chrome(Headless)即为Chrome的Headless模式,又称为无头浏览器

无头浏览器是一种没有图形用户界面的网页浏览器。 无头浏览器在类似于流行的Web浏览器的环境中提供对网页的自动控制,但是通过命令行界面或使用网络通信来执行。

安装GoogleChrome浏览器

在Windows下安装

  1. 直接下载安装

在Linux下安装

1. 从google官方网站下载Linux版chrome安装包

https://www.google.com/chrome/?platform=linux

2. 找到下载链接,下载xxx.rpm 文件

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

3. yum安装

yum install -y google-chrome-stable_current_x86_64.rpm

4. 安装过程中报错:

更新下依赖包 yum update glib2 -y

5. 查看版本号

chrome安装后,位于/opt/google/ 目录下 /opt/google/chrome/chrome --version

安装Chrome驱动

如果程序执行错误,浏览器没有打开,那么应该是没有装 Chrome 浏览器或者 Chrome 驱动没有配置在环境变量里。下载驱动,然后将驱动文件路径配置在环境变量即可。 驱动下载地址: https://sites.google.com/a/chromium.org/chromedriver/downloads

Windows

下载完成后,把zip文件解压下。有三种方式可以调用(这里我选择了较为方便的第一种)

方式1.

解压后的chromedriver.exe拷贝到Python 的Scripts目录下。

方式2.

或者在系统变量的Path变量中,添加驱动文件路径。

方式3.

在程序里面这样写:

代码语言:javascript
复制
   from selenium import webdriver
   browser = webdriver.Chrome('path\to\your\chromedriver.exe')
   browser.get('http://www.baidu.com/')

Linux

下载后,需要将chromedriver文件复制到/usr/bin或者/usr/local/bin或者/usr/sbin这几个文件夹下,这样才能让webdriver顺利调起浏览器供我们使用。

代码语言:javascript
复制
   wget https://chromedriver.storage.googleapis.com/81.0.4044.69/chromedriver_linux64.zip
   unzip chromedriver_linux64.zip
   chmod +x chromedriver
   mv -f chromedriver /usr/local/share/chromedriver
   ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
   ln -s /usr/local/share/chromedriver /usr/bin/chromedriver

简单的在python中测试一下

代码语言:javascript
复制
#coding=utf-8
from selenium import webdriver

option = webdriver.ChromeOptions()
option.add_argument('headless')
driver = webdriver.Chrome(chrome_options=option)
driver.get('https://www.google.com')
print(driver.title)
#最后关闭一下
driver.quit()

在控制台输出“ Google

在linux下的报错

代码语言:javascript
复制
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally.
  (unknown error: DevToolsActivePort file doesn't exist)
  (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

添加option.add_argument('--no-sandbox') 即可解决找不到DevToolsActivePort的报错

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装GoogleChrome浏览器
    • 在Windows下安装
      • 在Linux下安装
        • 1. 从google官方网站下载Linux版chrome安装包
        • 2. 找到下载链接,下载xxx.rpm 文件
        • 3. yum安装
        • 4. 安装过程中报错:
        • 5. 查看版本号
    • 安装Chrome驱动
      • Windows
        • 方式1.
        • 方式2.
        • 方式3.
      • Linux
        • 在linux下的报错
    • 简单的在python中测试一下
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档