在linux服务器上安装chrome :

ubuntu:

 下载页面https://www.chrome64bit.com/index.php/google-chrome-64-bit-for-linux

   wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb                        下载

   sudo apt-get install libxss1 libappindicator1 libindicator7                                                                   安装依赖

   sudo dpkg -i google-chrome*.deb                                                                                                          这条语句可能报错,下条命令将修复它

   sudo apt-get install -f

google-chrome                                                                                                                                       查看版本号

centos:

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

    yum localinstall  google-chrome-stable_current_x86_64.rpm                                                                      在当前目录下使用本地安装,yum会自动分析依赖,完成安装

headless chrome的基本操作:https://developers.google.com/web/updates/2017/04/headless-chrome

  启用无头chrome访问网页并打印页面 --dump-dom用于打印页面的document.body.innerHTML到标准输出:

  chrome --headless --disable-gpu --dump-dom https://www.baidu.com/

  截取网页截图, --screenshot 将会截取网页截图并保存为当前目录的screenshot.png文件:

    chrome --headless --disable-gpu --screenshot --window-size=1280,1696 https://www.baidu.com

  使用代理 --proxy-server=http://ip:port 访问页面,并保存截图

    chrome --headless --disable-gpu --screenshot --proxy-server=socks5://127.0.0.1:1080 https://www.google.com

python通过selenium使用chrome headless :

下载chromedriver, 页面地址 http://npm.taobao.org/mirrors/chromedriver/71.0.3578.80/

    由于安装的chrome是 71.0.3578.98版本的,选了个最接近的chromedriver。

    wget http://npm.taobao.org/mirrors/chromedriver/71.0.3578.80/chromedriver_linux64.zip

    在window上解压后将chromedriver文件上传到/usr/bin/目录下

  pip install selenium

  

代码示例:

from selenium import webdriver

PROXY='http://ip:port'                                                                #或 PROXY=’socks5://ip:port'

my_options=webdriver.ChromeOptions()
my_options.add_argument('--headless')                                        #添加无头参数
my_options.add_argument('--disable-gpu')            #添加无头参数
my_options.add_argument('--no-sandbox')                                    #添加无头参数
#my_options.add_argument('lang=zh_CN.UTF-8')
my_options.add_argument('--allow-running-insecure-content')     #设置proxy时添加的额外参数,允许不安全的证书
my_options.add_argument('--ignore-certificate-errors')     #设置proxy时添加的额外参数,允许不安全的证书
my_options.add_argument("user-agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'")                                                                            #设置用户代理
caps = DesiredCapabilities.CHROME.copy()
caps['proxy']={'httpProxy':PROXY,                                                #添加代理IP  proxy
'ftpProxy':PROXY,
'sslProxy':PROXY,
'noProxy':None,
'proxyType':'MANUAL',
'class':'org.openqa.selenium.Proxy',
'autodetect':False}
caps['acceptSslCerts'] = True                                                      #设置允许不安全的证书
caps['acceptInsecureCerts'] = True

bs=webdriver.Chrome(chrome_options=my_options,executable_path='/usr/bin/webdriver',desired_capabilities=caps)

bs.get('https://www.baidu.com')

chrome_options : ChromeOptions()对象

executable_path : chromedriver的绝对路径

desired_capabilities :一般为对应浏览器的DesiredCapabilities的copy(),避免更改默认设置

本地shadowsocks安装     pip install shadowsocks

配置shadowsocks连接参数 ,创建文件shadowsocks.json

{
"server":"153.234.1.5",
"server_port":1108,
"local_address": "0.0.0.0",
"local_port":1018
"password":"sdsewedxxf#",
"timeout":300,
"method":"chacha20",
"fast_open": false
}

启动shadowsocks客户端 sslocal -c shadowsocks.json -d start

-d 表示后台启动, -c表示使用文件shadowsocks.json中的配置

chrome 无头浏览器的使用的更多相关文章

  1. webdriver(chrome无头浏览器)

    '''chrome无头浏览器''' from selenium.webdriver.chrome.options import Options # 导入相应的类 from selenium impor ...

  2. selenium 无头浏览器headless browser

    无头浏览器,即没有界面的浏览器,浏览器该有的功能特性都有. if browser.lower() == "chrome": # 无头浏览器 chrome_opt = webdriv ...

  3. Selenium 启动无头浏览器,只有chrome 和 firefox的,没有IE

    使用无头浏览器,可以避免掉不确定的弹出框对脚本稳定性的影响,还能在脚本执行过程中省略掉了css 加载的时间. 以下是Selenium 启动无头浏览器的方法,只有chrome 和 firefox的. p ...

  4. selenium+谷歌无头浏览器爬取网易新闻国内板块

    网页分析 首先来看下要爬取的网站的页面 查看网页源代码:你会发现它是由js动态加载显示的 所以采用selenium+谷歌无头浏览器来爬取它 1 加载网站,并拖动到底,发现其还有个加载更多 2 模拟点击 ...

  5. 无头浏览器phantomJS

    selenium: 有头浏览器的代表(selenium+python也可实现静默运行 引入python的一个包,包叫:虚拟屏幕pyvirtualdisplay) PhantomJS : 无头浏览器的代 ...

  6. 基于Python, Selenium, Phantomjs无头浏览器访问页面

    引言: 在自动化测试以及爬虫领域,无头浏览器的应用场景非常广泛,本文将梳理其中的若干概念和思路,并基于代码示例其中的若干使用技巧. 1. 无头浏览器 通常大家在在打开网页的工具就是浏览器,通过界面上输 ...

  7. Python对Selenium调用浏览器进行封装包括启用无头浏览器,及对应的浏览器配置文件

    """ 获取浏览器 打开本地浏览器 打开远程浏览器 关闭浏览器 打开网址 最大化 最小化 标题 url 刷新 Python对Selenium封装浏览器调用 ------b ...

  8. 爬虫之 图片懒加载, selenium , phantomJs, 谷歌无头浏览器

    一.图片懒加载 懒加载 :    JS 代码  是页面自然滚动    window.scrollTo(0,document.body.scrollHeight)   (重点) bro.execute_ ...

  9. 浏览器控制之 selenium,phantomJs谷无头浏览器

    目录 浏览器控制之 selenium,phantomJs谷无头浏览器 selenium phantomJs 需求是尽可能多的爬取豆瓣网中的电影信息 谷歌无头浏览器 浏览器控制之 selenium,ph ...

随机推荐

  1. web.xml的学习

    web.xml 文件提供有关包含 Web 应用程序的 Web 组件的配置和部署信息. Java Servlet 规范根据 XML 模式文档来定义 web.xml 部署描述符文件.为了获取向后兼容性,W ...

  2. python第一天2.28

    2019年2月28日 今日内容大纲: 01 cpu 内存 硬盘 操作系统 CPU:中央处理器,相当于人大脑.   运行速度:飞机 内存:临时存储数据. 8g,16g,      运行速度:高铁 1,成 ...

  3. 最短Hamilton路径【状压DP】

    给定一张 nn 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hamilton路径. Hamilton路径的定义是从 0 到 n-1 不重不漏地经过每个点恰好一次. 输入 ...

  4. 使用Travis CI自动部署博客到github pages和coding pages

    每次换系统或换电脑之后重新部署博客总是很苦恼?想像jekyll那样,一次性部署完成后,以后本地不用安装环境直接 git push 就能生成博客?那推荐你应该使用使用 Travis CI了. 这篇文章我 ...

  5. Maven构建 SpringMVC+Spring+MyBatis 环境整合

    目录 1. Maven 项目搭建 2. Maven 插件生成 MyBatis 代码 3. 待续 ... 开发环境 开发环境请尽量保持一致,不一致的情况可能存在问题. JDK 1.7 MyEclipse ...

  6. Python中4位1进制数与float浮点数互相转换

    import struct s = 'F4CEF042' print(s) #<是小端,>是大端,f代表浮点数 print(struct.unpack('<f', bytes.fro ...

  7. [CentOS_7.4]Linux编译安装ffmpeg

    [CentOS_7.4]Linux编译安装ffmpeg   安装过程: 下载安装源,配置,编译,安装,设置环境变量. # wget http://www.ffmpeg.org/releases/ffm ...

  8. python运用PIL制作GIF

    与一.安装Pillow 安装地址:https://pypi.org/project/Pillow/#files 二.准备好图片,并从0开始命名,如下图: (ps:记得存图位置与新建的py文件在同一存放 ...

  9. 工作中遇到的问题——mysql关于年龄,性别的统计

    终于暂时闲下来了,一个项目加班加点一年多,前面太忙就顾不上博客了,慢慢的就懈怠了,最近算是暂时闲下来了,项目已经验收进入后期维护阶段,每天空余的时间也多了,想重新拾起博客,不求写什么高深的东西,以后就 ...

  10. Linux基础命令ls

    目录处理命令:ls -a 显示所有文件,包括隐藏文件 --all -l h  详细信息显示  --long --human -d 查看目录属性  - -i 查看文件唯一编号 -表示文件 d表示目录 l ...