前言
有小伙伴在用脚本启动浏览器时候发现原来下载的插件不见了,无法用firebug在打开的页面上继续定位页面元素,调试起来不方便 。

加载浏览器配置,需要用FirefoxProfile(profile_directory)这个类来加载,

profile_directory既为浏览器配置文件的路径地址

一、遇到问题

1.在使用脚本打开浏览器时候,发现右上角原来下载的插件firebug不见了,到底去哪了呢?

2.用脚本去打开浏览器时候,其实是重新打开了一个进程,跟手动打开浏览器不是一个进程。

所以没主动加载插件,不过selenium里面其实提供了对应的方法去打开,只是很少有人用到。

二、FirefoxProfile

1.要想了解selenium里面API的用法,最好先看下相关的帮助文档打开cmd窗口,

输入如下信息:
-》python

-》from selenium import webdriver

-》help(webdriver.FirefoxProfile)

 

Help on class FirefoxProfile in module

selenium.webdriver.firefox.firefox_profile:

class FirefoxProfile(builtin.object)
| Methods defined here:
|
init(self, profile_directory=None)
| Initialises a new instance of a Firefox Profile

 | :args:
| - profile_directory: Directory of profile that you want to use.
| This defaults to None and will create a new
| directory when object is created.

2.翻译过来大概意思是说,这里需要profile_directory这个配置文件路径的参数

3.profile_directory=None,如果没有路径,默认为None,启动的是一个新的,

有的话就加载指定的路径。

三、profile_directory

1.问题来了:Firefox的配置文件地址如何找到呢?

2.打开Firefox点右上角设置>?(帮助)>故障排除信息>显示文件夹

3.打开后把路径复制下来就可以了:

C:\Users\xxx\AppData\Roaming\Mozilla\Firefox\Profiles\1x41j9of.default

 

四、启动配置文件

1.由于文件路径存在字符:\ ,反斜杠在代码里是转义字符,这个有点代码基础的应该都知道。

不懂什么叫转义字符的,自己翻书补下基础吧!

2.遇到转义字符,为了不让转义,有两种处理方式:

第一种:\ (前面再加一个反斜杠)

第二种:r”\"(字符串前面加r,使用字符串原型)

 

五、参考代码:

# coding=utf-8
from selenium import webdriver
# 配置文件地址
profile_directory = r'C:\Users\xxx\AppData\Roaming\Mozilla\Firefox\Profiles\1x41j9of.default'
# 加载配置配置
profile = webdriver.FirefoxProfile(profile_directory)
# 启动浏览器配置
driver = webdriver.Firefox(profile)

最新文章

  1. Ubuntu下配置apache开启https
  2. C# Bitmap 复制
  3. poj1847 最短路
  4. 使用.NET读取exchange邮件
  5. wget 怎么下载https的连接错误: Unable to establish SSL connection
  6. socket编程学习
  7. WPF Command Binding
  8. 集合引入(ArrayList、LinkedList)
  9. Unity3D GUI学习之GUILayout控件及使用
  10. Swift语言Auto Layout入门教程:上篇
  11. 十天学Linux内核之第三天---内存管理方式
  12. 用纯css改变select的下拉菜单
  13. 201521123072《Java程序》第二周总结
  14. MySQL:表的操作 知识点难点总结:表完整性约束及其他常用知识点二次总结🙄
  15. oracle获取表字段属性
  16. phone number
  17. 国内最全的Spring Boot系列之二
  18. 高速上手C++11 14 笔记2
  19. 各种软件的安装教程centos mysql tomcat nginx jenkins jira 等等
  20. nodejs爬虫数据存入mysql

热门文章

  1. Android学习记录(6)—将java中的多线程下载移植到Android中(即多线程下载在Android中的使用)③
  2. 《Cracking the Coding Interview》——第12章:测试——题目3
  3. USACO Section1.3 Prime Cryptarithm 解题报告
  4. 【Validation】林轩田机器学习基石
  5. mongoDB坑
  6. 常用模块(sys)
  7. Python处理Sqlite3数据库
  8. 用archlinux作为日常开发机的感受
  9. 哈希UVALive 6326 Contest Hall Preparation
  10. 基于eclipse+maven创建web工程