selenuim+python自学笔记20190218

上一篇 / 下一篇  2019-02-18 10:15:03

如果下面内容我理解上有错的,请一定一定指出来,谢谢谢谢谢谢!!!!!!
一,安装python库
1,输入cmd,回车
2,命令行输入D: ,回车    (注:python安装在哪个盘就是哪个)
3,cd python\Scripts,回车   (注:这是python安装包里面Scripts的路径,因为Scripts里面有安装程序pip,所以要先进入Scripts里面)
4,.\pip install selenium     (注:安装selenium库)
二,安装chrome驱动
1,查询对应的版本号https://blog.csdn.net/huilan_same/article/details/51896672
2,下载地址http://npm.taobao.org/mirrors/chromedriver/
注:下载成功后将chromedriver.exe放在与python.exe同一目录下
三,导入模块
from selenium import webdriver  #注:不要把selenium与webdriver的位置弄反了
四,API浏览器自动打开一个网址用webdriver里面的get方法
1,首先要调用哪个浏览器(此处调用谷歌浏览器)
#driver是定义的一个变量,正真打开浏览器的语法是webdriver.Chrome(),用的是webdriver中Chrome()方法
driver=webdriver.Chrome()
2,用get方法打开网址,因为一切的前提是要有浏览器,所以一定要记得打开浏览器的方法在前面,下面用变量driver代替。
driver.get("http://www.baidu.com")  
#此语句等同与webdriver.Chrome().get("http://www.baidu.com")
五,id定位UI元素find... 注:可以用webdriver中的各种定位方法。开发人员可以为元素设置非唯一的ID ,或通过自动生成ID ,所以有时候定位id不管用,就要考虑其他定位方法。


driver.find_element_id("#id的名称#")


或者利用find_element\find_elements,前者返回一个元素,后者返回一个列表(这是私有方法):
from selenium.webdriver.common.by import By
driver.find_element(by=By.ID,value="#id名称")
以下是By支持的属性:
ID = 'id'
NAME = 'name'
XPATH = 'xpath'
LINK_TEXT = '链接内容'
PARTIAL_LINK_TEXT = '部分链接内容'
TAG_NAME = '标签名称'
CLASS_NAME = '类名'
CSS_SELECTOR = 'CSS选择器'
注:driver.find_element(by=By.ID,value="#id名称")将By.ID改为By.id会报错的哟,支持的属性里面都是大写。


百度网站为例,附上两种方法的代码:
#从模块selenuim中导入函数webdriver
fromseleniumimportwebdriver
fromselenium.webdriver.common.byimportBy
#选择浏览器谷歌
driver=webdriver.Chrome()
#浏览器中输入地址用webdriver.chrome()中的get方法
driver.get('http://www.baidu.com')
b=driver.find_element(by=By.ID,value="kw")
#向文本框内输入内容用send_keys("内容")
b.send_keys('hello')
第二种方式:
#从模块selenuim中导入函数webdriver
fromseleniumimportwebdriver
#选择浏览器谷歌
driver=webdriver.Chrome()
#浏览器中输入地址用webdriver.chrome()中的get方法
driver.get('http://www.baidu.com')
#用id定位元素find...
b=driver.find_element_by_id("kw")
#向文本框内输入内容用send_keys("内容")
b.send_keys('hello')
小白内心独白:私有方法太烦,还是公有方法简单,适合我这种代码不太会写的。
六,向文本框内输入内容用send_keys("内容")
这个地方要注意,你定位后它有一个返回值,你需要定义一个变量去接收它返回的内容,接收后,再根据返回信息填入你输入的内容。
b=driver.find_element_by_id("kw")
#向文本框内输入内容用send_keys("内容")
b.send_keys('hello')
七,点击按钮click()
步骤
1,定位按钮的元素
2,点击
#定位“百度一下”元素
button=driver.find_element_by_id("su")
#定位后点击,用方法click()
button.click()
八,附上全部代码,今日的学习就完拉:
#从模块selenuim中导入函数webdriver
fromseleniumimportwebdriver
#选择浏览器谷歌
driver=webdriver.Chrome()
#浏览器中输入地址用webdriver.chrome()中的get方法
driver.get('http://www.baidu.com')
#用id定位文本框元素find...
text=driver.find_element_by_id("kw")
#向文本框内输入内容用send_keys("内容")
text.send_keys('hello')
#定位“百度一下”元素
button=driver.find_element_by_id("su")
#定位后点击,用方法click()
button.click()
九,总结今日用到的方法
webdriver.Chrome()  调用浏览器,还可以webdriver.IE(),前提是有驱动
get()               打开的网址
find_element_by_id()用id定位元素
find_element()      私有方法定位元素,里面包含id,name....等定位
send_keys()         向文本框输入内容
click()             点击操作

TAG:

 

评分:0

我来说两句

日历

« 2024-04-17  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 2365
  • 日志数: 3
  • 建立时间: 2019-02-18
  • 更新时间: 2019-02-21

RSS订阅

Open Toolbar