0
点赞
收藏
分享

微信扫一扫

学习小狂欢~Python利用 Selenium实现案例


不需要下载任何驱动,原生支持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日志记录

在本示例中实现了根据不同需要,将不同级别的日志重定向输出至不同的目标。




举报

相关推荐

0 条评论