linux 下selenium chrome使用详解
安装chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm yum install ./google-chrome-stable_current_x86_64.rpm yum install mesa-libOSMesa-devel gnu-free-sans-fonts wqy-zenhei-fonts
安装chromedriver
淘宝源(推荐)
wget http://npm.taobao.org/mirrors/chromedriver/2.41/chromedriver_linux64.zip unzip chromedriver_linux64.zip move chromedriver /usr/bin/ chmod +x /usr/bin/chromedriver
编写selenium自动化脚本
#!/usr/bin/python # -*-coding:utf-8-*- import re, os import json import time import random import requests from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.common.exceptions import NoSuchElementException from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support.wait import TimeoutException from selenium.webdriver.chrome.options import Options from selenium.webdriver.support.select import Select binary_location = '/usr/bin/google-chrome' chrome_driver_binary = '/usr/bin/chromedriver' chrome_options = Options() chrome_options.binary_location = binary_location chrome_options.add_argument('--no-sandbox') chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-gpu') chrome_options.add_argument('--disable-dev-shm-usage') chromedriver = chrome_driver_binary os.environ["webdriver.chrome.driver"] = chromedriver BROWSER = webdriver.Chrome(executable_path='/usr/bin/chromedriver', chrome_options=chrome_options) WAIT = WebDriverWait(BROWSER, 5) URL = "http://www.baidu.com" BROWSER.get(URL) ..........
踩到的坑一:
中文乱码,解决方法:
centos:
yum groupinstall fonts
ubuntu:
sudo apt-get install ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy
踩到的坑二:
不能截图,抛time out异常
selenium.common.exceptions.TimeoutException: Message: timeout: Timed out receiving message from renderer: 10.000
解决方法:
options = webdriver.ChromeOptions() options.add_argument("--headless") options.add_argument("start-maximized") options.add_argument("enable-automation") options.add_argument("--no-sandbox") options.add_argument("--disable-infobars") options.add_argument("--disable-dev-shm-usage") options.add_argument("--disable-browser-side-navigation") options.add_argument("--disable-gpu") driver = webdriver.Chrome(chrome_options=options) driver.set_window_size(1024, 768) driver.get_screenshot_as_file(STATIC_FOLDER + home_img_url) driver.close()
到此这篇关于linux 下selenium chrome使用详解的文章就介绍到这了,更多相关linux selenium chrome内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Django发送邮件和itsdangerous模块的配合使用解析
这篇文章主要介绍了Django发送邮件和itsdangerous模块的配合使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-08-08Python3内置模块pprint让打印比print更美观详解
这篇文章主要给大家介绍了关于Python3内置模块pprint让打印比print更美观的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python3具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧2019-06-06不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
这篇文章主要给大家介绍了关于不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决方法,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。2017-09-09
最新评论