Python爬虫:selenium使用chrome和PhantomJS实用参数

简介: Python爬虫:selenium使用chrome和PhantomJS实用参数

chrome参数设置示例

from selenium import webdriver
options = webdriver.ChromeOptions()
# 设置语言
options.add_argument('lang=zh_CN.UTF-8')
# 不显示界面
options.add_argument('headless')
# 设置user-agent请求头
options.add_argument('user-agent=%s' % user_agent)
 # 设置代理        
options.add_argument('--proxy-server=%s' % proxy)
# http://127.0.0.1
# 图片不加载
prefs = {
    'profile.default_content_setting_values': {
        'images': 2
    }
}
options.add_experimental_option('prefs', prefs)
browser = webdriver.Chrome(chrome_options = options)
# 设置超时
browser.set_page_load_timeout(5)
browser.set_script_timeout(10)  # 这两种设置都进行才有效
# 设置窗口大小
browser.set_window_size(1366, 768)
# 访问网站
browser.get("https://www.baidu.com/")
# 截图
browser.save_screenshot("1.png")

参数设置


–user-data-dir=”[PATH]” 指定用户文件夹User Data路径,可以把书签这样的用户数据保存在系统分区以外的分区。 
–disk-cache-dir=”[PATH]“ 指定缓存Cache路径 
–disk-cache-size= 指定Cache大小,单位Byte 
–first run 重置到初始状态,第一次运行 
–incognito 隐身模式启动 
–disable-javascript 禁用Javascript 
–omnibox-popup-count=”num” 将地址栏弹出的提示菜单数量改为num个。我都改为15个了。 
–user-agent=”xxxxxxxx” 修改HTTP请求头部的Agent字符串,可以通过about:version页面查看修改效果 
–disable-plugins 禁止加载所有插件,可以增加速度。可以通过about:plugins页面查看效果 
–disable-javascript 禁用JavaScript,如果觉得速度慢在加上这个 
–disable-java 禁用java 
–start-maximized 启动就最大化 
–no-sandbox 取消沙盒模式 
–single-process 单进程运行 
–process-per-tab 每个标签使用单独进程 
–process-per-site 每个站点使用单独进程 
–in-process-plugins 插件不启用单独进程 
–disable-popup-blocking 禁用弹出拦截 
–disable-plugins 禁用插件 
–disable-images 禁用图像 
–incognito 启动进入隐身模式 
–enable-udd-profiles 启用账户切换菜单 
–proxy-pac-url 使用pac代理 [via 1/2] 
–lang=zh-CN 设置语言为简体中文 
–disk-cache-dir 自定义缓存目录 
–disk-cache-size 自定义缓存最大值(单位byte) 
–media-cache-size 自定义多媒体缓存最大值(单位byte) 
–bookmark-menu 在工具 栏增加一个书签按钮 
–enable-sync 启用书签同步 
–single-process 单进程运行Google Chrome 
–start-maximized 启动Google Chrome就最大化 
–disable-java 禁止Java 
–no-sandbox 非沙盒模式运行

phantomJS参数设置示例

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.proxy import ProxyType
dcap = dict(DesiredCapabilities.PHANTOMJS)
# 设置user-agent请求头
dcap["phantomjs.page.settings.userAgent"] = user_agent
# 禁止加载图片
dcap["phantomjs.page.settings.loadImages"] = False
phantomJS = webdriver.PhantomJS(desired_capabilities=dcap)
# 设置代理
_proxy = webdriver.Proxy()
_proxy.proxy_type = ProxyType.MANUAL
_proxy.http_proxy = proxy
# 将代理设置添加到webdriver.DesiredCapabilities.PHANTOMJS中
 _proxy.add_to_capabilities(webdriver.DesiredCapabilities.PHANTOMJS)
phantomJS.start_session(webdriver.DesiredCapabilities.PHANTOMJS)
相关文章
|
12天前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
|
16天前
|
数据采集 Python
【python】爬虫-西安医学院-校长信箱
本文以西安医学院-校长信箱为基础来展示爬虫案例。来介绍python爬虫。
【python】爬虫-西安医学院-校长信箱
|
22天前
|
数据采集 安全 Python
python并发编程:Python实现生产者消费者爬虫
python并发编程:Python实现生产者消费者爬虫
24 0
python并发编程:Python实现生产者消费者爬虫
|
2天前
|
前端开发 测试技术 C++
Python自动化测试面试:unittest、pytest与Selenium详解
【4月更文挑战第19天】本文聚焦Python自动化测试面试,重点讨论unittest、pytest和Selenium三大框架。unittest涉及断言、TestSuite和覆盖率报告;易错点包括测试代码冗余和异常处理。pytest涵盖fixtures、参数化测试和插件系统,要注意避免过度依赖unittest特性。Selenium的核心是WebDriver操作、等待策略和测试报告生成,强调智能等待和元素定位策略。掌握这些关键点将有助于提升面试表现。
15 0
|
2天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
12 0
|
6天前
|
数据采集 JavaScript 前端开发
使用Python打造爬虫程序之破茧而出:Python爬虫遭遇反爬虫机制及应对策略
【4月更文挑战第19天】本文探讨了Python爬虫应对反爬虫机制的策略。常见的反爬虫机制包括User-Agent检测、IP限制、动态加载内容、验证码验证和Cookie跟踪。应对策略包括设置合理User-Agent、使用代理IP、处理动态加载内容、验证码识别及维护Cookie。此外,还提到高级策略如降低请求频率、模拟人类行为、分布式爬虫和学习网站规则。开发者需不断学习新策略,同时遵守规则和法律法规,确保爬虫的稳定性和合法性。
|
11天前
|
Web App开发 测试技术 网络安全
|
17天前
|
数据采集 存储 前端开发
Python爬虫如何快速入门
写了几篇网络爬虫的博文后,有网友留言问Python爬虫如何入门?今天就来了解一下什么是爬虫,如何快速的上手Python爬虫。
20 0
|
2月前
|
Web App开发 JavaScript 前端开发
从零开始,轻松打造个人化Chrome浏览器插件
从零开始,轻松打造个人化Chrome浏览器插件
71 0
|
4月前
|
Web App开发 JavaScript
Vue 项目中使用 debugger 在 chrome 谷歌浏览器中失效以及 console.log 指向去了 vue.js 代码
Vue 项目中使用 debugger 在 chrome 谷歌浏览器中失效以及 console.log 指向去了 vue.js 代码
300 0

热门文章

最新文章