快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)

文章目录 [隐藏]

简单的使用Selenium

如何完成了上一篇的学习内容,安装好了Python下的Selenium模块,同时下载了合适的浏览器驱动程序,那么我们就可以在Python中使用Selenium了。

先来看这样一个例子:

# coding:utf-8
'''
    @author:州的先生
    @site:zmister.com
    @微信公众号:州的先生
'''
from selenium import webdriver

driver = webdriver.Chrome(executable_path=r"D:\chromedriver_win32\chromedriver.exe")
driver.get('http://www.baidu.com')
inputs = driver.find_element_by_id('kw')
inputs.clear()
inputs.send_keys("州的先生")
print(driver.title)

运行上述代码,我们的电脑会自动启动一个Chrome浏览器,并打开百度的首页,接在定位百度的输入框,在其中输入“州的先生”,最后在控制台上输入网页的标题:

快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)

2.2 第一个代码解释

在上面这个程序里面,我们首先从selenium中导入和webdriver子模块,webdriver提供了所有的浏览器驱动程序的实现调用方式:

from selenium import webdriver

在当前版本的selenium中,webdriver实现了绝大多数浏览器的接口:

快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)

接下来,我们实例化了一个Chrome浏览器的webdriver:

driver = webdriver.Chrome(executable_path=r"D:\chromedriver_win32\chromedriver.exe")

在Chrome()方法中,我们通过executable_path指定了之前下载好的chromedriver.exe的路径。

driver的get()方法将操纵浏览器打开一个指定的URL,这一步将等待页面完全加载完成:

driver.get("http://www.baidu.com")

在等待页面加载完成之后,我们使用find_element_by_id()方法通过元素的ID来定位和查找页面输入框元素。在selenium中,webdriver提供了很多个方法来查找元素,其方法的名称都为find_element_by_ *:

inputs = driver.find_element_by_id('kw')

在通过输入框的id值定位到百度首页的输入搜索框之后,我们接着使用clear()方法来清除输入框中的内容(虽然输入框中并没有内容),然后使用send_keys()方法,将一个字符串发送到输入框中:

inputs.clear()
inputs.send_keys("州的先生")

最后,我们将页面的标题打印了出来:

print(driver.title)

这样,我们就使用Selenium完成了一个简单的网页自动化操作。

2.3 总结

本篇,我们通过一个简单的示例——操纵Chrome浏览器打开百度首页,在输入框中输入搜索词,完成了Selenium的初步介绍。Selenium还有更多的用法,在接下来的篇幅中我们会一一介绍到。下一篇,我们将会介绍在Selenium中进行元素定位。

  文章版权所有:州的先生博客,转载必须保留出处及原文链接

  原文地址:https://zmister.com/archives/248.html

快速掌握Python Selenium Web自动化:二)Selenium操纵浏览器的最基本用例(转载)
# coding:utf-8
from selenium import webdriver

if __name__ == '__main__':
    driver = webdriver.Chrome(executable_path=r"C:\Program Files\Google\Chrome\Application\chromedriver.exe")
    driver.get('http://www.baidu.com')
    inputs = driver.find_element_by_id('kw')
    inputs.clear()
    inputs.send_keys("州的先生")
    print(driver.title)
View Code

 

上一篇:MindSpore部署图像分割示例程序


下一篇:MindSpore图像分类模型支持(Lite)