什么是selenium?
  1. Selenium是一个用于Web应用程序测试的工具。
  2. Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。
  3. 支持通过各种driver(FirfoxDriver,IternetExplorerDriver,OperaDriver,ChromeDriver)驱动真实浏览器完成测试。
  4. selenium也是支持无界面浏览器操作的。
为什么使用selenium?
  1. 模拟浏览器功能,自动执行网页中的js代码,实现动态加载
如何安装selenium?
  1. 操作谷歌浏览器驱动下载地址, http://chromedriver.storage.googleapis.com/index.html
  2. 谷歌驱动和谷歌浏览器版本之间的映射表, http://blog.csdn.net/huilan_same/article/details/51896672
  3. 查看谷歌浏览器版本, 谷歌浏览器右上角‐‐>帮助‐‐>关于
  4. pip install selenium
selenium的使用步骤?
  导入:from selenium import webdriver
  创建谷歌浏览器操作对象:
    path = 谷歌浏览器驱动文件路径
    browser = webdriver.Chrome(path)
  访问网址
    url = 要访问的网址  
    browser.get(url) 

查看浏览器版本

下载chrome的对应版本chromedriver.exe

使用国内源地址http://npm.taobao.org/mirrors/chromedriver/

下载好解压到文件夹,随意路径即可

浏览器不是默认安装路径。调用Chrome浏览器时,经常会遇到以下报错cannot find chrome binary(找不到chrome文件)

需要添加浏览器到环境变量中

右击桌面chrom图标—>打开‘文件所在位置’—>复制路径—>添加到系统变量path中

# (1) 导入selenium
from selenium import webdriver # 指定chromedriver.exe驱动绝对路径
path = r'D:\Chrome\Application\chromedriver.exe' # (2) 创建浏览器操作对象
browser = webdriver.Chrome(path) # (3) 访问网站
# url = 'https://www.baidu.com'
# 打开网页
# browser.get(url) url = 'https://www.jd.com/' browser.get(url) # page_source方法获取网页源码
content = browser.page_source
print(content)

seckill是由js渲染出来的,而js要在浏览器中运行,通过urllib.request.urlopen(url)模拟浏览器发出请求对象无法获得

selenium基本使用,及cannot find chrome binary解决方案的更多相关文章

  1. selenium.common.exceptions.WebDriverException: Message: unknown Error: cannot find Chrome binary

    使用Chrome浏览器时,经常会遇到以下报错:浏览器没有调用起来 selenium.common.exceptions.WebDriverException: Message: unknown Err ...

  2. Jenkins执行selenium报错unknown error: cannot find Chrome binary

    问题描述:在Pycharm中执行selenium测试用例,可以正常运行, 集成在Jenkins中,构建时,发现构建成功,但是查看Console Output,报错:unknown error: can ...

  3. selenium +python webdriver运行时报错cannot find Chrome binary

    今日在公司电脑运行自动化测试脚本,出现cannot find Chrome binary报错 百思不得其解,排错后发现应该是电脑以前有配置driver文件路径,driver所在文件路径已变更,现pyt ...

  4. 命令行可以执行python脚本,jenkins里执行报错:cannot find Chrome binary

    “selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary”这个 ...

  5. selenium webdriver 启动三大浏览器Firefox,Chrome,IE

    selenium webdriver 启动三大浏览器Firefox,Chrome,IE 1.安装selenium 在联网的情况下,在Windows命令行(cmd)输入pip install selen ...

  6. selenium python 报错“ unable to find binary in default location”

    selenium python 报错如下: raise exception_class(message, screen, stacktrace)selenium.common.exceptions.W ...

  7. Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。

    Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息.   本文链接:https://blog.csdn.net/qq_38161040/art ...

  8. Serverless 实战——使用 Rendertron 搭建 Headless Chrome 渲染解决方案

    为什么需要 Rendertron? 传统的 Web 页面,通常是服务端渲染的,而随着 SPA(Single-Page Application) 尤其是 React.Vue.Angular 为代表的前端 ...

  9. selenium无法正常运行 Chrome浏览器,cannot find Chrome binary的问题

    有些同学在运行selenium-chrome时会遇到这个问题, System.setProperty("webdriver.chrome.driver","files/c ...

随机推荐

  1. Java实现爬取京东手机数据

    Java实现爬取京东手机数据 最近看了某马的Java爬虫视频,看完后自己上手操作了下,基本达到了爬数据的要求,HTML页面源码也刚好复习了下,之前发布两篇关于简单爬虫的文章,也刚好用得上.项目没什么太 ...

  2. C++的智能指针学习笔记(初)

    C++ primer plus 16.2节介绍了auto_ptr,该模板类在C++11中已弃用,目前已被shared_ptr代替. auto_ptr又叫做智能指针,用于管理动态内存分配的用法. 为什么 ...

  3. sql常用的统计公式

    hivesql中max,min函数不能作用于多列,因此在有上下门限区间限制时多用公式直接计算. max(x,y)=(x+y+ABS(x-y))/2 min(x,y)=(x+y-ABS(x-y))/2 ...

  4. 初识HTML01

    什么是页面? 页面是基于浏览器的应用程序 页面是数据展示的载体,由浏览器和服务器共同执行产物. 浏览器的功能 向服务器发送用户请求指令 接收并解析数据展示给用户 服务器的功能 存储页面资源 处理并响应 ...

  5. 脚本注入1(boolean&&get)

    现在,我们回到之前,练习脚本支持的布尔盲注(get型). 布尔盲注的应用场景是查询成功和失败时回显不同,且存在注入点的地方. 这里以Less-8为例: 发现查询成功时,会显示:失败则无回显. 同时发现 ...

  6. BPMN 學習實例

    什麼是業務流程圖? What is BPMN 業務流程建模符號(BPMN)是業務流程建模的一種方法.它基於統一建模語言(UML)中活動圖的概念,以圖形符號(業務流程圖)支持業務流程的規範.BPMN為企 ...

  7. 微信小程序的发布流程

    一.背景 在中大型的公司里,人员的分工非常仔细,一般会有不同岗位角色的员工同时参与同一个小程序项目.为此,小程序平台设计了不同的权限管理使得项目管理者可以更加高效管理整个团队的协同工作 以往我们在开发 ...

  8. MiniFly四轴飞行器之部分系统及电源分析

    最近硬件四轴很火,了解了很久,还是选择了MiniFly,主要还是资料多,后边可以有人讨论,不像很多就是建了个群,研究问题还是在论坛方便很多. 四轴终于拿到手,功能很强大,主要是还支持二次开发,可以研究 ...

  9. hdu 1166 敌兵布阵(简单线段树or树状数组)

    题意: N个工兵营地,第i个营地有ai个人. 三种操作: 1.第i个营地增加x个人. 2.第i个营地减少x个人. 3.查询第i个到第j个营地的总人数. 思路: 线段树or树状数组 代码:(树状数组) ...

  10. cf Two Sets (我用二分最大匹配做的)

    题意: n个数p1,p2....pn     两个数a,b 把它们分成A,B两个集合. 若x属于A,a-x一定属于A. 若x属于B,b-x一定属于B. 问是否可能将这n个数分成两个集合.若可以,输出每 ...