码迷,mamicode.com
首页 > 编程语言 > 详细

Selenium2+python自动化18-加载Firefox配置

时间:2016-12-03 15:41:04      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:转义字符   设置   斜杠   wrapper   mat   默认   com   down   orm   

前言
有小伙伴在用脚本启动浏览器时候发现原来下载的插件不见了,无法用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)

 

本章很简单,多加2行代码而已,主要是弄清楚原理。

Selenium2+python自动化18-加载Firefox配置

标签:转义字符   设置   斜杠   wrapper   mat   默认   com   down   orm   

原文地址:http://www.cnblogs.com/yoyoketang/p/6128664.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!