Python+Selenium+Chrome 的一个案例
第一步,下载chromeDrive:http://npm.taobao.org/mirrors/chromedriver(我下载的是2.43版本的chromedriver_win32.zip)
下载之后,把chromedriver.exe 解压到安装JetBrains PyCharm 2018.2.4 x64的路径下。
第二步,在JetBrains PyCharm 2018.2.4 x64 工具中下载selenium库,具体如何下载,请看我的博客"JetBrains PyCharm 2018.2.4 x64 工具里如何安装bs4"。
第三步:自动打开chrome浏览器
from selenium import webdriver
from selenium.webdriver.common.keys import Keys dest = r"F:\python\chromedriver.exe" #chromedriver本地保存的路径
'''
实例化webdriver时,可以通过参数对浏览器做些设置,如设置网络代理、浏览器下载文件保存路径等。若是不传参数,则默认继承本地浏览器设置,
若是对浏览器启动时属性进行设置,则就利用到了ChromeOption类。具体信息可参考chromedriver官网。“Python+Selenium+第三方浏览器”可以处理多种爬虫场景,
包括静态页面,post表单,以及JS等。应用场景很强大,使用selenium操作浏览器进行模拟点击的方式就可以让我们省心很多,不需要担心有什么“隐藏字段”、cookie追踪等。
但对于包含验证码网页的操作,这种方式也不好处理,主要困难在于图像识别。若是页面包含验证码,那就需要结合图像识别工具了,
这种情况相对也比较难处理,图像识别准确率受到图片内容影响。
'''
def init_webdriver(proxy=False):
''' 设置浏览器默认下载路径 '''
PROXY ="x.x.x.x;8080"
options =webdriver.ChromeOptions()
options.add_experimental_option("prefs", { "download.default.directory": r"F:\python\download", "safebrowsing.enabled":True })
if proxy:
options.add_argument('--proxy-seerver=%s'% PROXY)
driver = webdriver.Chrome(executable_path=dest, chrome_options=options)
return driver if __name__ == "__main__":
browser_driver =init_webdriver(True)
browser_driver.get("https://connect.microsoft.com/site1304/Downloads")
print ("客户端会完成重定向,跳转到登录界面") if "login." in browser_driver.current_url:
print("获取登录框元素")
elem = browser_driver.find_element_by_name("loginfmt")
print("清空登录框内容")
elem.clear()
print("在账户框中输出账号,并回车,完成页面跳转")
elem.send_keys("current_key:"+Keys.RETURN)
Python+Selenium+Chrome 的一个案例的更多相关文章
- Python selenium chrome 环境配置
Python selenium chrome 环境配置 一.参考文章: 1. 记录一下python easy_install和pip安装地址和方法 http://heipark.iteye.com/b ...
- Python selenium chrome打包exe后禁用控制台输出滚动日志
Python selenium chrome打包exe后,在运行的过程中,如果遇到需要input()输入时,会发现被不断滚动刷新的日志把命令行输入快速顶掉了,通过查阅资料不断实践,发现以下方法有效: ...
- python+selenium遍历某一个标签中的内容
一.python+selenium遍历某一个标签中的内容 举个例子:我要获取列表标签<li></li>的内容 根据python+selenium定位到列表整体,使用for循环获 ...
- python+selenium+Chrome options参数
python+selenium+Chrome options参数 Chrome Options常用的行为一般有以下几种: 禁止图片和视频的加载:提升网页加载速度. 添加代理:用于翻墙访问某些页面,或者 ...
- Docker环境下运行python+selenium+chrome
Docker环境下运行python+selenium+chrome docker运行时占用的资源非常少,而且能将环境进行有效的隔离,可以快速的进行部署,因此可以将docker与selenium结合实现 ...
- Python + Selenium +Chrome 批量下载网页代码修改【新手必学】
Python + Selenium +Chrome 批量下载网页代码修改主要修改以下代码可以调用 本地的 user-agent.txt 和 cookie.txt来达到在登陆状态下 批量打开并下载网页, ...
- 在Centos7上安装Python+Selenium+Chrome+Chromedriver
1.下载Chrome 上一篇文章已经演示过了Python+Selenium+Firefox+Geckodriver安装步骤并通过自动化脚本打开百度 因此当前只需要安装Chrome和Chromedriv ...
- python+selenium+unnitest写一个完整的登陆的验证
import unittest from selenium import webdriver from time import sleep class lonInTest (unittest.Test ...
- chrome浏览器爬虫WebDriverException解决采用python + selenium + chrome + headless模式
WebDriverException: Message: unknown error: Chrome failed to start: crashed 第一种:如果出现下面情况: chrome浏览器有 ...
随机推荐
- 使用 GoLand 启动 运行 Go 项目
来源:https://my.oschina.net/u/3744526/blog/3085468 在使用本博客经验之前 需配置好 GOPATH 跟 GOROOT 创建好本地工作路径之后,使用 GoLa ...
- 免费 https 申请步骤,你必须知道
不适用 https 加密的网站,基本上就等于在裸奔. 来,开始开始动手做 我的系统是 CentOS6 第一步:安装Certbot Certbot可以用于管理(申请.更新.配置.撤销和删除等)Let's ...
- python学习19类5之多态与鸭子模型
'''''''''一.多态1.Python中多态是指一类事物有多种形态.''' class Animal: def run(self): raise AttributeError('子类必须实现这个方 ...
- Makefile 简要辅导 【转载】
A Simple Makefile Tutorial Makefiles are a simple way to organize code compilation. This tutorial do ...
- Spring Boot JPA中java 8 的应用
文章目录 Optional Stream API CompletableFuture Spring Boot JPA中java 8 的应用 上篇文章中我们讲到了如何在Spring Boot中使用JPA ...
- oracle获取表字段及表注释的相关操作
一.获取表字段: select * from user_tab_columns where Table_Name='用户表' user_tab_columns 为当前用户的columns,除此之外还有 ...
- Nacos作为配置中心时,多个服务共用一个dataId的配置
写在前面 本文是对我之前一篇文章<Spring Cloud+nacos+Feign,实现注册中心及配置中心>的补充.此文章中简单写了如何将Nacos作为配置中心.在使用配置中心时,我们会遇 ...
- python——import日常学习记录
import为导入包,有两种方法,一个是import,一个是from ** import ** import后紧跟着的是个模块,一般是一个.py文件下的类名: from *** import *** ...
- PHP命令执行学习总结
前言 最近学习了PHP命令执行,内容比较多,把自己学到的总结下来,加深理解,水平有限,欢迎大佬斧正. 什么是PHP命令注入攻击? Command Injection,即命令注入攻击,是指由于Web应用 ...
- CSS的基础使用
一,css是什么? CSS全称为“层叠样式表” ,与HTML相辅相成,实现网页的排版布局与样式美化 二,CSS使用方式 1.行内样式/内联样式(单一页面中使用) 借助于style标签属性,为当前的标签 ...