一个晚上加一个上午啊 笨死算球

一个晚上加一个上午啊 笨死算球

__author__ = 'Administrator'
# coding: utf-8
from selenium import webdriver
import time
import os
import pdb
from selenium import selenium
from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0
from selenium.webdriver.support import expected_conditions as EC # available since 2.26.0

# if 'HTTP_PROXY'in os.environ: del os.environ['HTTP_PROXY']


browser = webdriver.Firefox() # open Chrome or Firefox
browser.get("http://www.******.com/") # load www.cmall.com
time.sleep(2) # let the page load

print('title of current page is %s' %(browser.title))
print('url of current page is %s' %(browser.current_url))
time.sleep(2)

browser.find_element_by_xpath(".//*[@id='userLogin']/a[1]/span").click()
'''
XX = browser.find_element_by_tag_name("iframe")
browser.switch_to.frame(XX)
browser.find_element_by_id('usernameLogin').send_keys('*****')
browser.find_element_by_id('passwordLogin').send_keys('*******')
time.sleep(2)
browser.find_element_by_id('btnLoginLocal').click()
'''
'''
# 这种方法也可以的,就是太笨了,真难看
browser.get("http://www.******.com/login-quick.html")
browser.find_element_by_id('btnLogin').click()
time.sleep(5)
browser.find_element_by_id('usernameLogin').send_keys('*******')
browser.find_element_by_id('passwordLogin').send_keys('*******')
browser.find_element_by_id('btnLoginLocal').click()
'''


# def changeTostartOrderWindow(browser):
# yuding = browser.find_element_by_xpath('html/body/div[5]/div[3]/div[2]/div/iframe')
# browser.find_elements_by_class_name('pdb-contentframe')


# 原来无需先定位上层class,原来不支持直接yuding=browser.find这种写法
browser.find_element_by_tag_name('iframe')
yuding = browser.find_element_by_tag_name('iframe')
'''
text = yuding.get_attribute()
print("iframe's id is" %text)
'''
# text = yuding.find_element_by_tag_name('iframe').get_attribute('id')


# yuding = browser.FindElements('iframe_1453206880881') 动态的iframe无法取到固定id
browser.switch_to_frame(yuding) # 之前用的iframe,怎么也取不到

time.sleep(10)

# browser.switch_to().frame(yuding)
browser.find_element_by_id('btnLogin').click()
time.sleep(10)


# yufeng = browser.find_element_by_name('iframe_1453204183258')
# browser.switch_to.frame(yufeng) 方法么写对啊,不是点,而是下划线
browser.find_element_by_id('usernameLogin').send_keys('*******')
browser.find_element_by_id('passwordLogin').send_keys('******')
browser.find_element_by_id('btnLoginLocal').click()
# pass
# 切换框架方法-结束

#def changeToDefaultIframe(browser):
browser.switch_to.default_content();
#pass

转载于:https://www.cnblogs.com/vivivi/p/5144778.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109169.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 抖音挺火的机房蹦迪代码「建议收藏」

    最近抖音乃至全网这个机房蹦迪代码很火今天分享下代码.桌面新建一个文档文件,后缀名改为bat,然后右击该文件点击编辑,输入下方代码保存双击运行即可!colorecho开始蹦迪color1aecho开始蹦迪color2becho开始蹦迪color3cecho开始蹦迪color4decho开始蹦迪color…

    2022年4月14日
    351
  • futureTask使用[通俗易懂]

    futureTask使用[通俗易懂]List<FutureTask>taskList=newArrayList<>();if(leaderList!=null&&!leaderList.isEmpty()){leaderList.forEach(userId->{…

    2022年6月15日
    53
  • C语言学生成绩管理系统详解[通俗易懂]

    文章目录一、系统概述二、数据类型三、自定义函数说明四、运行界面五、源代码源代码请直接跳到最后引言:最近写了C语言的大作业,感觉做得还行,记录一下,给后人一些参考,给自己留更深印象方便后续改进!不知道发了这篇博客会不会认为我抄袭…害怕.jpg一、系统概述使用单向链表和文件作为基本数据结构,设计一个学生成绩管理程序,管理某学校学生成绩。[1]插入数据[2]修改对应数据项的数据[3]删除对应学号的信息[4]查找某学号的信息[5]查找不及格学生[6]对学生成绩进行排名[7]统计各个等级的学生

    2022年4月11日
    56
  • C语言中u8 u16 u32含义,有关stm32的问题,程序里面的u8、u16这些是什么意思啊「建议收藏」

    C语言中u8 u16 u32含义,有关stm32的问题,程序里面的u8、u16这些是什么意思啊「建议收藏」u8是unsignedchar,u16是unsignedshort,u32是unsignedlong。u8,u16,u32都是C语言数据类型,分别代表8位,16位,32位长度的数据类型,一个字节是8位,所以u8是1个字节,u16是2个字节,u32是4个字节。可以在stm32库头文件中找到数据类型的声明在stdint.h中:typedefunsignedcharuint8_t;typed…

    2022年10月9日
    5
  • 积分上限函数_定积分的基本计算方法

    积分上限函数_定积分的基本计算方法设函数$f(x)$在区间$[a,b]$上可积,对任意的$x\in[a,b]$,做变上限积分$$\Phi(x)=\int_{a}^{x}f(t)dt$$这个积分称为函数$f(x

    2022年8月2日
    7
  • 聊聊MyBatis缓存机制

    聊聊MyBatis缓存机制点击上方“程序员小灰”,选择“置顶公众号”有趣有内涵的文章第一时间送达!本文转载自公众号美团技术点评前言MyBatis是常见的Java数据库访问层框架。在日常工作中,开…

    2022年5月21日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号