Selenium安装配置FireFox浏览器

  • 前置需求:
  • 1. 下载安装FireFox浏览器和Geckodriver
    • 1.1 Windows下载
    • 1.2 Linux下载
  • 2. 使用Selenium调用FireFox浏览器
    • 2.1 创建webdriver的FireFox对象
    • 2.2 爬取网页url
    • 2.3 完整代码
  • 参考文献

前置需求:

  • Selenium介绍和Selenium WebDriver安装

1. 下载安装FireFox浏览器和Geckodriver

如果本地已经有FireFox此步骤可以省略
注意:Geckodriver是必下载项,如果项目中没有geckodriver会提示 no geckodriver

1.1 Windows下载

  • 1.1.1 进入FireFox官网直接下载最新版本FireFox

    • FireFox官网
  • 1.1.2 直接运行安装包安装浏览器即可
  • 1.1.3 FireFox的默认安装路径在C盘的programs file/Mozilla FireFox文件夹中,复制路径,后面会用到
  • 1.1.4 查看FireFox版本并下载对应版本的geckodriver
    • github geckodriver

1.2 Linux下载

Linux的FireFox直接是可执行二进制文件,所以可以直接在服务器上解压运行。

  • 1.2.1 Linux直接通过指令下载(这里下载的是FireFox 73.0.1如果想要下载最新版本,可以去官网自行下载FireFox官网)
wget https://download-installer.cdn.mozilla.net/pub/firefox/releases/73.0.1/linux-x86_64/zh-CN/firefox-73.0.1.tar.bz2
  • 1.2.2 下载后解压即可使用
mkdir ~/FireFox
!tar -xjvf firefox-73.0.1.tar.bz2 -C ~/FireFox
  • 下载对应的geckodriver版本。(firefox版本为73对应geckodriver版本为0.26)
wget https://github.com/mozilla/geckodriver/releases/download/v0.26.0/geckodriver-v0.26.0-linux64.tar.gz

如果是自行下载的firefox版本,请自行到GitHub中查找对应的geckodriver下载
- github geckodriver

  • 解压geckodriver到项目的根目录,即调用selenium的python文件的同级目录。
tar -zxvf /geckodriver-v0.26.0-linux64.tar.gz -C [你的路径]

2. 使用Selenium调用FireFox浏览器

2.1 创建webdriver的FireFox对象

  • 如果没装selenium请先安装
pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 导入selenium模块
from selenium import webdriver
from selenium.common import exceptions # selenium异常模块
  • 设置无页面启动浏览器
    如果想要显示firefox页面,这两句可以注释掉
# selenium对firefox的支持组件操作由webdriver中的FirefoxOptions实现
# 如果时Chrome浏览器则使用webdriver.ChromeOptions()
# edge没有option!!
options = webdriver.FirefoxOptions()
options.add_argument('--headless')
  • 创建webdriver的firefox对象
    executable_path和firefox_binary都必须是绝对路径!!!
browser_driver = webdriver.Firefox(executable_path=r"geckodriver执行文件的绝对路径",  # 这里必须要是绝对路径# windows是.exe文件 xxx/xxx/geckodriver.exe, xxx/xxx/firefox.exe# linux直接是xxx/xxx/geckodriver, xxx/xxx/firefoxfirefox_binary=r"firefox执行文件的绝对路径",options=options)

这里通过阅读Firfox源代码可以看出,如果将geckodriver放在项目根目录中,则可以不用填写executable_path,并且在执行webdriver的时候selenium会自动在项目更目录中创建geckodriver.log,如果是已经将firefox写入系统环境变量的话firefox_binary可以不用填写


2.2 爬取网页url

  • 调用get方法,返回html页面内容
url = r'https://www.baidu.com/
browser_driver.get(url)
print ('当前爬取的网页url为:{0}'.format(browser_driver.current_url))
print ('当前爬取网页内容为:\n {0}'.format(browser_driver.page_source))
  • 千万记得一定要退出!!!
browser_driver.quit()

2.3 完整代码

from selenium import webdriver
from selenium.common import exceptions # selenium异常模块
def browser_crawler(url):options = webdriver.FirefoxOptions()options.add_argument('--headless')browser_driver = webdriver.Firefox(executable_path=r"geckodriver执行文件的绝对路径",  # 这里必须要是绝对路径# windows是.exe文件 xxx/xxx/geckodriver.exe, xxx/xxx/firefox.exe# linux直接是xxx/xxx/geckodriver, xxx/xxx/firefoxfirefox_binary=r"firefox执行文件的绝对路径",options=options)try:url = r'https://www.baidu.com/browser_driver.get(url)print ('当前爬取的网页url为:{0}'.format(browser_driver.current_url))print ('当前爬取网页内容为:\n {0}'.format(browser_driver.page_source))finally:# 无论有没有异常,都会执行退出语句browser_driver.quit()
if __name__ == '__main__':url = r'https://www.baidu.com'browser_crawler(url)

参考文献

  • selenium 3.14 配置Firefox的路径
  • Python爬虫_selenium + Firefox的使用
  • Selenium WebDriver

Python爬虫——Selenium安装配置FireFox浏览器相关推荐

  1. Python用 selenium 模块控制Firefox浏览器

    Python用 selenium 模块控制Firefox浏览器 需要的东西: Firefox浏览器下载地址: http://getfirefox.com/ selenium包: https://pyp ...

  2. [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图

    前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能.         [Pyt ...

  3. [Python爬虫] Selenium+Phantomjs动态获取CSDN下载资源信息和评论

    前面几篇文章介绍了Selenium.PhantomJS的基础知识及安装过程,这篇文章是一篇应用.通过Selenium调用Phantomjs获取CSDN下载资源的信息,最重要的是动态获取资源的评论,它是 ...

  4. [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍

    前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...

  5. Python爬虫 Selenium实现自动登录163邮箱和Locating Elements介绍

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  6. Python爬虫 - Selenium(4)配置启动项参数

    前言:本章将详细介绍Selenium启动项参数的配置,其中包括无界面模式(在服务器上运行不设置此项会报错).浏览器窗口大小设置.浏览器User-Agent (请求头)等等. 目录 一.常用参数 二.代 ...

  7. selenium中启动firefox浏览器时设置代理、加载配置文件、加载某个插件以及firefox没有安装在默认路径下的代码写法

    selenium 中启动firefox浏览器的六种方式,所用的是java 1.如果浏览器没有安装在默认路径下,则用 System.setProperty("Webdriver.firefox ...

  8. 最全python爬虫库安装详解

    目录 一.请求库的安装 1.requests 的安装 2.Selenium的安装 3.ChromeDrive 的安装 4.GeckoDriver 的安装 5.PhantomJS 的安装 6.aioht ...

  9. Python 爬虫 Selenium 基本使用

    Python 爬虫 Selenium 基本使用 1. 基础知识 1.1 下载浏览器驱动 1.2 帮助文档 2. 浏览器操作 2.1 浏览器导航 2.2 窗口和选项卡 2.3 Frames and If ...

最新文章

  1. 用python写计算机专业_自学open cv,用Python写的,本人是一名学生党,因为我本专业不是搞计算机的_cc霜_学生党_教育_教育其他...
  2. 看动画轻松理解“递归”与“动态规划”
  3. Linux2.6 内核进程调度分析
  4. java 线性表排序_Java线性表的排序
  5. 【NLP】中文情感分类单标签
  6. Java—TCP与HTTP连接
  7. 农信社计算机知识,农信社备考:计算机基础知识(15)
  8. html怎么让图片自动动起来,css如何让图片动起来?
  9. 实验2 格式化输入输出和分支语句
  10. php中mysql数据库集群,MySQL集群
  11. PAT (Basic Level) Practice 1006 换个格式输出整数
  12. 百度SEO站群爱客影院v3.5自动采集影视网站源码
  13. linux dstat io,linux dstat工具
  14. 小米路由r2d论坛_小米路由器R2D固件 V2.24.10 官方稳定版
  15. python桌面程序臃肿_危险的转变:Python正在从简明转向臃肿,从实用转向媚俗
  16. Silverlight 动态加载XAP文件
  17. 换了一把椅子之后才知道,原来人体工学可以这么香。
  18. Docker部署Django+Mysql+uWSGI+Nginx Web应用 - 笔记更新2022-01-04
  19. Linux 下 美化字体
  20. 2018沈阳k(经典的约瑟夫环)

热门文章

  1. java 编译 解释执行_关于Java的编译执行与解释执行
  2. 明景移动式视频智能摘要检索分析系统
  3. 『编程题全队』Alpha 阶段冲刺博客Day8
  4. Wex5 App移动开发期末复习
  5. 原金立总裁卢伟冰加入小米,雷军发微博欢迎
  6. python脚本下载_日记python脚本
  7. 服装3D商城虚拟企业展厅解决方案
  8. [阅读技巧] 快速阅读之二 进一步提升阅读资料的速度
  9. 后渗透篇:常见backdoor和persistence方式方法
  10. MacBook安装Windows10双系统时蓝屏,Your PC ran into a problem and needs to restar(KERNEL_SECURITY)