Python爬虫——Selenium安装配置FireFox浏览器
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官网
- FireFox官网
- 1.1.2 直接运行安装包安装浏览器即可
- 1.1.3 FireFox的默认安装路径在C盘的programs file/Mozilla FireFox文件夹中,复制路径,后面会用到
- 1.1.4 查看FireFox版本并下载对应版本的geckodriver
- github 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浏览器相关推荐
- Python用 selenium 模块控制Firefox浏览器
Python用 selenium 模块控制Firefox浏览器 需要的东西: Firefox浏览器下载地址: http://getfirefox.com/ selenium包: https://pyp ...
- [Python爬虫] Selenium自动访问Firefox和Chrome并实现搜索截图
前两篇文章介绍了安装,此篇文章算是一个简单的进阶应用吧!它是在Windows下通过Selenium+Python实现自动访问Firefox和Chrome并实现搜索截图的功能. [Pyt ...
- [Python爬虫] Selenium+Phantomjs动态获取CSDN下载资源信息和评论
前面几篇文章介绍了Selenium.PhantomJS的基础知识及安装过程,这篇文章是一篇应用.通过Selenium调用Phantomjs获取CSDN下载资源的信息,最重要的是动态获取资源的评论,它是 ...
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
- Python爬虫 Selenium实现自动登录163邮箱和Locating Elements介绍
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- Python爬虫 - Selenium(4)配置启动项参数
前言:本章将详细介绍Selenium启动项参数的配置,其中包括无界面模式(在服务器上运行不设置此项会报错).浏览器窗口大小设置.浏览器User-Agent (请求头)等等. 目录 一.常用参数 二.代 ...
- selenium中启动firefox浏览器时设置代理、加载配置文件、加载某个插件以及firefox没有安装在默认路径下的代码写法
selenium 中启动firefox浏览器的六种方式,所用的是java 1.如果浏览器没有安装在默认路径下,则用 System.setProperty("Webdriver.firefox ...
- 最全python爬虫库安装详解
目录 一.请求库的安装 1.requests 的安装 2.Selenium的安装 3.ChromeDrive 的安装 4.GeckoDriver 的安装 5.PhantomJS 的安装 6.aioht ...
- Python 爬虫 Selenium 基本使用
Python 爬虫 Selenium 基本使用 1. 基础知识 1.1 下载浏览器驱动 1.2 帮助文档 2. 浏览器操作 2.1 浏览器导航 2.2 窗口和选项卡 2.3 Frames and If ...
最新文章
- 用python写计算机专业_自学open cv,用Python写的,本人是一名学生党,因为我本专业不是搞计算机的_cc霜_学生党_教育_教育其他...
- 看动画轻松理解“递归”与“动态规划”
- Linux2.6 内核进程调度分析
- java 线性表排序_Java线性表的排序
- 【NLP】中文情感分类单标签
- Java—TCP与HTTP连接
- 农信社计算机知识,农信社备考:计算机基础知识(15)
- html怎么让图片自动动起来,css如何让图片动起来?
- 实验2 格式化输入输出和分支语句
- php中mysql数据库集群,MySQL集群
- PAT (Basic Level) Practice 1006 换个格式输出整数
- 百度SEO站群爱客影院v3.5自动采集影视网站源码
- linux dstat io,linux dstat工具
- 小米路由r2d论坛_小米路由器R2D固件 V2.24.10 官方稳定版
- python桌面程序臃肿_危险的转变:Python正在从简明转向臃肿,从实用转向媚俗
- Silverlight 动态加载XAP文件
- 换了一把椅子之后才知道,原来人体工学可以这么香。
- Docker部署Django+Mysql+uWSGI+Nginx Web应用 - 笔记更新2022-01-04
- Linux 下 美化字体
- 2018沈阳k(经典的约瑟夫环)
热门文章
- java 编译 解释执行_关于Java的编译执行与解释执行
- 明景移动式视频智能摘要检索分析系统
- 『编程题全队』Alpha 阶段冲刺博客Day8
- Wex5 App移动开发期末复习
- 原金立总裁卢伟冰加入小米,雷军发微博欢迎
- python脚本下载_日记python脚本
- 服装3D商城虚拟企业展厅解决方案
- [阅读技巧] 快速阅读之二 进一步提升阅读资料的速度
- 后渗透篇:常见backdoor和persistence方式方法
- MacBook安装Windows10双系统时蓝屏,Your PC ran into a problem and needs to restar(KERNEL_SECURITY)