1、启动不同浏览器(firefox、google、ie)
一、启动firefox浏览器
不需要下载任何驱动,原生支持firefox,但要注意firefox浏览器的版本,如果出现启动firefox失败的情况,请降低或升级firefox版本。
1、firefox安装在默认路径,启动代码如下:
# -*- coding:utf-8 -*-
from selenium import webdriver
driver=webdriver.Firefox()
# 注意http不可以省略
url='http://www.baidu.com'
driver.get(url)
driver.close()
2、指定firefox的安装路径启动,代码如下:
# -*- coding:utf-8 -*-
from selenium import webdriver
import os
# firefox 实际安装路径
ffdriver = "C:\\Program Files (x86)\\\Mozilla Firefox\\firefox.exe"
os.environ["webdriver.firefox.driver"] = ffdriver
driver = webdriver.Firefox(ffdriver )
# 注意http不可以省略
url='http://www.baidu.com'
driver.get(url)
driver.close()
二、启动google浏览器
需要下载相应的驱动,下载地址:
http://chromedriver.storage.googleapis.com/index.html
参考代码如下:
# -*- coding:utf-8 -*-
from selenium import webdriver
import os
# chromedriver.exe 实际安装路径, 笔者这里放置在C盘根目录
googledriver = "C:\\chromedriver.exe"
os.environ["webdriver.chrome.driver"] = googledriver
driver = webdriver.Chrome(googledriver)
# 注意http不可以省略
url='http://www.baidu.com'
driver.get(url)
driver.close()
三、启动IE浏览器
需要下载相应的驱动,下载地址:
http://selenium-release.storage.googleapis.com/index.html
参考代码如下:
# -*- coding:utf-8 -*-
from selenium import webdriver
import os
# iedriver.exe 实际安装路径, 笔者这里放置在C盘根目录
iedriver = "C:\\iedriver.exe"
os.environ["webdriver.ie.driver"] = iedriver
driver = webdriver.Chrome(iedriver)
# 注意http不可以省略
url='http://www.baidu.com'
driver.get(url)
driver.close()
2、日志格式和级别控制
接下来我们看看如何控制日志的输出格式和日志级别。代码示例如下:
#-*- coding:utf-8 -*-
import logging
if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG, # 日志级别设置
format="%(asctime)s %(filename)s [line: %(lineno)d] %(levelname)s %(message)s",
datefmt='%a, %d %b %Y %H:%M:%S',
filename='mylog.log',
filemode='w'
)
logging.debug(u'这是debug级别日志记录')
logging.info(u'这是信息级别日志记录')
logging.warning(u'这是警告级别日志记录')
在当前目录下mylog.log文件中的内容为:
Mon, 20 Mar 2017 16:21:28 log.py [line: 14] DEBUG 这是debug级别日志记录
Mon, 20 Mar 2017 16:21:28 log.py [line: 15] INFO 这是信息级别日志记录
Mon, 20 Mar 2017 16:21:28 log.py [line: 16] WARNING 这是警告级别日志记录
3、日志输入定向
下面我们来看看如何把日志同时输出到console和文件中,代码示例如下:
#-*- coding:utf-8 -*-
import logging
if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG, # 日志级别设置
format="%(asctime)s %(filename)s [line: %(lineno)d] %(levelname)s %(message)s",
datefmt='%a, %d %b %Y %H:%M:%S',
filename='mylog.log',
filemode='w')
#####################################################
# 定义一个StreamHandler,将info级别的或更高级别的日志输出到标错错误
# 并将其添加到当前的日志处理对象
console = logging.StreamHandler()
console.setLevel(logging.INFO)
formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s')
console.setFormatter(formatter)
logging.getLogger('').addHandler(console)
####################################################
logging.debug(u"这是debug日志记录")
logging.info(u'这是info日志记录')
logging.warning(u'这是warning日志记录')
在console中输出以下日志记录:
root : INFO 这是info日志记录
root : WARNING 这是warning日志记录
在当前目录下mylog.log文件中内容为:
Mon, 20 Mar 2017 17:32:43 log.py [line: 26] DEBUG 这是debug日志记录
Mon, 20 Mar 2017 17:32:43 log.py [line: 27] INFO 这是info日志记录
Mon, 20 Mar 2017 17:32:43 log.py [line: 28] WARNING 这是warning日志记录
在本示例中实现了根据不同需要,将不同级别的日志重定向输出至不同的目标。
领取专属 10元无门槛券
私享最新 技术干货