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

[Selenium] 从一个实例开始,访问Python网站并进行关键字搜索

时间:2015-07-07 18:57:19      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:

下面是一个简单的实例

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome()
browser.get("http://www.python.org")
assert "Python" in browser.title
elem = browser.find_element_by_name("q")
elem.send_keys("pycon")
elem.send_keys(Keys.RETURN)
assert "No results found." not in browser.page_source
time.sleep(20)
browser.close()

分析该实例

selenium.webdriver模块提供了一个webdriver的实现, 目前可以支持Firefox, Chrome, IE 和Remote。

Keys模块提供了一些键盘操作,如 Return, F1, ALT 等等

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

 

接着,创建一个浏览器实例Chrome

browser = webdriver.Chrome()

如果创建IE,可以采用以下方式

browser = webdriver.Ie()

当你第一次运行,可能出现错误提示

selenium.common.exceptions.WebDriverException: Message: IEDriver executable needs to be available in the path.

是因为执行这些实例需要添加相应的driver

 

然后通过get函数访问url。这里需要声明的是get函数会等待页面安全加载以后,才会将控制权交回python 脚本, 否则一直等待。

当页面加载完成后,判断该网页的title是否包含”Python”

browser.get(http://www.python.org)
assert "Python" in browser.title

 

接着在搜索框中搜索关键字pycon.

1. 先找到搜索框

elem = browser.find_element_by_name("q")

2. 像搜索框中发送关键字

elem.send_keys("pycon")

3. 模拟键盘Enter键提交搜索需求

elem.send_keys(Keys.RETURN)

搜索需求提交后,判断是否有内容找到

assert "No results found." not in browser.page_source

最后等待20秒后,关闭浏览器

browser.close()

[Selenium] 从一个实例开始,访问Python网站并进行关键字搜索

标签:

原文地址:http://www.cnblogs.com/orangeseason/p/4627765.html

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