未经作者允许,禁止转载!python selenium webdriver处理循环点击

循环点击主要是针对一些同类的选择按钮,或者下拉选项,或者是选择页码~~~~~~

如下面两张图片显示的将年份进行循环选择,和将鼠标悬浮循环选择

下面是用python写的 selenium webdriver处理循环点击代码,相关的java代码随后在发表

from selenium importwebdriverimporttimefrom selenium.webdriver.common.action_chains importActionChains

driver=webdriver.Chrome()

driver.get("http://toyota-oss:[email protected]/tcom-apps/vapi-preview/console.html")#alert = driver.switch_to_alert() 如果是第一次打开上面的链接,就需要alert.accept(),但是从第二次之后保留了cookie就不再有弹窗#alert.accept()

driver.maximize_window()

time.sleep(2)print "进入toyota首页"

#total_year=len(driver.find_element_by_id(‘year‘).find_element_by_tag_name(‘option‘))------报错:WebElement没有len属性#print "年份的个数是"+total_year#time.sleep(2)#years=driver.find_element_by_id(‘year‘).find_element_by_tag_name(‘option‘)----------报错:WebElement没有循环属性#for year in years:#year.click()#time.sleep(1)---------------本来打算用这个循环很方便的,但是总是报错,只能用下面的笨方法了!

modelyear=driver.find_element_by_xpath("//select[@id=‘year‘]/option[1]")

year2017=driver.find_element_by_xpath("//select[@id=‘year‘]/option[2]")

year2016=driver.find_element_by_xpath("//select[@id=‘year‘]/option[3]")

year2015=driver.find_element_by_xpath("//select[@id=‘year‘]/option[4]")

year2014=driver.find_element_by_xpath("//select[@id=‘year‘]/option[5]")

year2013=driver.find_element_by_xpath("//select[@id=‘year‘]/option[6]")

yearList=[modelyear,year2017,year2016,year2015,year2014,year2013]for year inyearList:

year.click()

time.sleep(1)

time.sleep(3)

driver.find_element_by_xpath("//*[@id=‘console‘]/div[6]/input").click()

time.sleep(4)

Content1=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[1]")

Content2=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[2]")

Content3=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[3]")

Content4=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[4]")

Content5=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[5]")

Content6=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[6]")

ContentList=[Content1,Content2,Content3,Content4,Content5,Content6]for Content inContentList:

Content.click()

time.sleep(1)print "循环点击结束"time.sleep(2)

Content1=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[1]")

Content2=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[2]")

Content3=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[3]")

Content4=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[4]")

Content5=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[5]")

Content6=driver.find_element_by_xpath("/html/body/div[2]/div/nav/ul/li[6]")

ContentList=[Content1,Content2,Content3,Content4,Content5,Content6]for Content inContentList:#above=driver.find_element_by_id("hao123-star")

ActionChains(driver).move_to_element(Content).perform()

time.sleep(1)print "循环悬浮结束"

total_year=len(driver.find_element_by_id(‘year‘).find_element_by_tag_name(‘option‘))-------------报错:WebElement没有len属性

print "年份的个数是"+total_year

time.sleep(2)

years=driver.find_element_by_id(‘year‘).find_element_by_tag_name(‘option‘)-----------------------报错:WebElement没有循环属性

for year in years:

year.click()

time.sleep(1)

不知道为什么总是报错,我有点开始怀疑人生了!慢慢研究吧,有结果了在分享给大家!

above=driver.find_element_by_id("hao123-star")

ActionChains(driver).move_to_element(above).perform()

这段代码是:鼠标悬浮

原文:http://www.cnblogs.com/111testing/p/6147810.html

selenium 实现循环点击_webdriver处理循环点击相关推荐

  1. v-for循环时,我只需要点击到的元素做出相应反应,其他的元素不变

    v-for循环时,我只需要点击到的元素做出相应反应,其他的元素不变:但是往往是我们往元素上添加样式导致所有v-for循环出的元素都会变化. 这里的话可以我们使用index索引,当点击一个元素时,将该元 ...

  2. 用javascript点击小圆点循环播放轮播图片

    点击小圆点循环播放图片 <style>*{padding: 0;margin: 0;}.place{position: relative;width: 800px;height: 600p ...

  3. vue点击事件, 循环出来的关注列表 ,点击只关注其中一个并改变样式

    vue点击事件, 循环出来的关注列表 ,点击只关注其中一个并改变样式 这个适合大家参考,你们要是直接复制粘贴的话效果是出不来的,因为里面用了组件和api, <template><ul ...

  4. c语言for循环加法,BigDecimal 在for循环中相加注意事项

    public static void main(String[] args) { BigDecimal bigDecimal = new BigDecimal(1); for (int i = 0; ...

  5. html按键精灵怎么设置,按键精灵如何设置循环?按键精灵设置循环的方法步骤...

    按键精灵如何设置循环?最近有很多小伙伴向我询问按键精灵中的循环如何设置,那么今天小编就给大家带来按键精灵设置循环的方法步骤,让我们一起来看看吧. 方法/步骤 1.先在我们电脑桌面找到按键精灵软件的打开 ...

  6. vue循环后不能下滑_Vue 循环后的数据更改无法响应。

    数组循环渲染到视图上,点击dom 改变数组中的一个布尔值来更新 该dom的class.发现数据变了,但相应的class 并没有根据改变后的布尔值去渲染. 原始数据是created 里面获取的,赋给了一 ...

  7. 循环神经网络的主要特点,循环神经网络应用举例

    CNN(卷积神经网络).RNN(循环神经网络).DNN(深度神经网络)的内部网络结构有什么区别? 如下:1.DNN:存在着一个问题--无法对时间序列上的变化进行建模.然而,样本出现的时间顺序对于自然语 ...

  8. mysql plsql 循环_PL/SQL for...loop循环语句

    FOR LOOP语句是一种重复控制结构,可以有效地编写一个需要执行特定次数的循环. 语法 下面演示如何使用FOR LOOP语句 - FOR counter IN initial_value .. fi ...

  9. 用c语言循环语句,C语言中循环语句有哪些具体怎么用

    C提供三种基本的循环语句:for语句.while语句和do-while语句. 一.for循环 for循环是开界的. 它的一般形式为: for(;;) 语句; 初始化总是一个赋值语句,它用来给循环控制变 ...

  10. for循环递减_讲讲关于循环的那些事

    每个人一生中都至少应该获得一次全场起立鼓掌的机会,因为我们都曾胜过这个世界.-R.J.帕拉西奥<奇迹男孩> 导言:希腊哲学家Zeno曾经说"运动是不可能的.由于运动的物体在到达目 ...

最新文章

  1. cstring 比较_不同商用齿轮齿接触分析软件的比较(三)
  2. 【数据结构】双链表的实现(C语言)
  3. 前端入门(水球特效,css)
  4. java正则表达式及api_Java魔法堂:深入正则表达式API
  5. python 共现矩阵_Python词组共现矩阵
  6. [Leetcode][第93题][JAVA][复原IP地址][剪枝][回溯]
  7. Windows Live SkyDrive, Windows Live Sync 和 Live Mesh
  8. java 防重_如何做一个防重设计
  9. Android学习小Demo(19)利用Loader来实时接收短信
  10. 软件评测师考试介绍及经验分享
  11. 云课堂让职业院校Web前端教学更简单
  12. Win10 DirectShow
  13. 打印机打印小票代码(附工具类,接口讲解和源码)
  14. 非专业学生如何系统的学习计算机编程?
  15. Windows XP 全攻略
  16. 运行 skimage 报错ImportError: DLL load failed:找不到指定模块
  17. 有了规范,第二代曲面电视会更火吗?
  18. Eclipse 插件大全
  19. java列表末尾添加元素_在迭代它时将元素添加到Java LinkedList的末尾
  20. 大盘点!进口+国产28款分子POCT设备分析

热门文章

  1. RStudio的help字体的调整大小
  2. PMP培训机构怎么选?
  3. UnityWebRequest下载文件
  4. mysql监视执行sql语句_监控mysql执行的sql语句
  5. 一级计算机第65套题,全国计算机一级考试题库(附答案).pdf
  6. android pickerview 多行,Android-PickerView系列之介绍与使用篇(一)
  7. 使用 WebView2 封装一个生成 PDF 的 WPF 控件
  8. 用 logisim写一个 cpu
  9. OLS和GWR模型部分参数解释
  10. flymcu烧录stm32L151问题