【webdriver自动化】使用unittest实现自动登录163邮箱然后新建一个联系人
#练习:登录163邮箱然后新建一个联系人
import unittest
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC class AddEmailContactByFireFox(unittest.TestCase): def setUp(self):
self.driver =webdriver.Ie(executable_path="c:\\IEDriverServer") def test_HandleFrameByPageSource(self):
url = "https://mail.163.com/"
self.driver.get(url)
time.sleep(2)
iframe=self.driver.find_element_by_xpath("//iframe[@id='x-URS-iframe']")
self.driver.switch_to.frame(iframe) time.sleep(5)
user_name = self.driver.find_element_by_xpath(".//input[@name='email']")
pwd = self.driver.find_element_by_xpath(".//input[@name='password']")
login = self.driver.find_element_by_xpath("//a[@id='dologin']") user_name.clear()
pwd.clear()
user_name.send_keys("XXX")
pwd.send_keys("wangjing1990")
login.click()
time.sleep(20) address_link=self.driver.find_element_by_xpath(".//div[text()='通讯录']")
address_link.click()
time.sleep(2) #wait = WebDriverWait(self.driver, 10, 0.2)
#wait.until(EC.visibility_of_element_located((By.LINK_TEXT, "退出")))
#assert u"退出" in self.driver.page_source
address_center_link=self.driver.find_element_by_xpath("//div[text()='通讯录']")
address_center_link.click()
time.sleep(5) #wait.until(EC.visibility_of_element_located((By.XPATH, "//span[text()='新建联系人']")))
create_contact_person_button=self.driver.find_element_by_xpath("//span[text()='新建联系人']")
create_contact_person_button.click() time.sleep(15)
#name = WebDriverWait(self.driver,10).until(lambda x: x.find_element_by_xpath("//input[@id='input_N']"))
#name.send_keys("wangjing") contacts_name_link=self.driver.find_element_by_xpath(".//input[@id='input_N']")
contacts_name_link.send_keys("wangjing")
time.sleep(2) contacts_email_link=self.driver.find_element_by_xpath(".//div[@id='iaddress_MAIL_wrap']/dl/dd/div/input")
contacts_email_link.send_keys("XXX@163.com")
time.sleep(2) contacts_tel_link=self.driver.find_element_by_xpath(".//div[@id='iaddress_TEL_wrap']/dl/dd/div/input")
contacts_tel_link.send_keys("")
time.sleep(2) contacts_other_link=self.driver.find_element_by_xpath(".//div[@id='iaddress_TEL_wrap']/following::dl/dd/div/textarea")
contacts_other_link.send_keys("family")
time.sleep(2) contacts_confirm_link=self.driver.find_element_by_xpath(".//span[text()='确 定']")
contacts_confirm_link.click()
time.sleep(2) def tearDown(self):
self.driver.quit() if __name__ == '__main__':
unittest.main()
【webdriver自动化】使用unittest实现自动登录163邮箱然后新建一个联系人的更多相关文章
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
- 5、Selenium+Python自动登录163邮箱发送邮件
1.Selenium实现自动化,需要定位元素,以下查看163邮箱的登录元素 (1)登录(定位到登录框,登录框是一个iframe,如果没有定位到iframe,是无法定位到账号框与密码框) 定位到邮箱框( ...
- python selenium模拟登录163邮箱和QQ空间
最近在看python网络爬虫,于是我想自己写一个邮箱和QQ空间的自动登录的小程序, 下面以登录163邮箱和QQ空间和为例: 了解到在Web应用中经常会遇到frame/iframe 表单嵌套页面的应用, ...
- Python selenium登录163邮箱示例
思路:使用python自带的unittest单元测试框架测试163邮箱登录成功的case import unittestfrom selenium import webdriverimport tim ...
- python webdriver 登录163邮箱发邮件加附件, 外加数据和程序分离,配置文件的方式
配置文件:UiObjectMapSendMap.ini用来存放配置信息 GetOptionSendMail.py 用来读取配信息 #encoding=utf-8from selenium.webdri ...
- 自动化web前端测试,自动登录网站.目前发现最靠谱的方法是imacros
imacros免费版 登录宏代码的示例: //首先登出URL GOTO=http://yoursite/logout.html//打开登录页面URL GOTO=http://yoursite/logi ...
- python webdriver 显示等待-自动登录126邮箱,添加联系人
脚本内容:#encoding=utf-8#author-夏晓旭from selenium import webdriverimport timefrom selenium.webdriver.supp ...
- selenium登录163邮箱
环境:windows8 python2.7+selenium+chrome 直接上脚本: # coding=utf-8from selenium import webdriverimport tim ...
- selenium登录163邮箱,得到cookie,requests后续请求
1.场景 很多时候登录操作是比较复杂的,因为存在各种反爆破操作,以及为了安全性提交数据都会存在加密.如果要完全模拟代码去实现登录操作是比较复杂,并且该网站后续更新了登录安全相关功能,那么登录的模拟操作 ...
随机推荐
- 什么是BFC、IFC、GFC和FFC
什么是BFC.IFC.GFC和FFC CSS2.1中只有BFC和IFC, CSS3中才有GFC和FFC. FC的全称是:Formatting Contexts,是W3C CSS2.1规范中的一个概念. ...
- swf 上传
推荐这个博客:http://blog.csdn.net/hi_kevin/article/details/23430345 这个文章很不错,我推荐这个文章:http://leeon.me/upload ...
- drozer安装使用教程(Windows)
drozer和adb一样,又不是新出的工具,本不该出了这么久还要由我这样半懂不懂的再写篇东西了.但是还是一样每次使用都得百度和筛选半天,所以记下来算给自己看.以后看到我还写些老掉牙的东西都是这个原因, ...
- ubuntu下的网速限制软件wondershaper (2011-09-18 00:00:00)转载▼
上网或下载的时候我们常常希望网速快一点,但有时我们也需要限制网速,在ubuntu系统下,可以使用wondershaper,不仅可以限制下载速度还可以限制上传速度. 安装好之后,需要使用终端取得管理员权 ...
- linux下find命令详解
Linux中find常见用法示例 ·find path -option [ -print ] [ -exec -ok command ] {} \; find命令的参数 ...
- shell 通配符
Bash中的通配符 '?' 匹配一个任意字符 '*' 匹配0个或任意多个字符,也就是可以匹配任何内容 '[]' 匹配括号中任意一个字符.例如[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c ...
- [BZOJ3173]最长上升子序列
Problem 给你n个数A1~An,每次将i插入第Ai位后,最后输出每次插入后这个数列的最长上升子序列 Solution 这道题非常的妙.首先如果新加入的这个数构成了最长上升子序列,由于在它插入之前 ...
- 解决了好几个软件的构建问题,在解决部署问题,bluemix部署
https://www.puteulanus.com/archives/838#comment-961新版 Bluemix 一键搭建 SS 脚本 https://blog.feixueacg.com/ ...
- CentOS7下安装MySQL5.7安装与配置
介绍在CentOS7上yum安装数据库服务器MySQL Community Server 5.7的方法. 准备 CentOS7默认安装了和MySQL有兼容性的MariaDB数据库,在我们安装MySQL ...
- Neo4J 教程
好文转载: W3C: https://www.w3cschool.cn/neo4j/neo4j_cypher_api_example.html neo4j图数据库入门: http://blog.csd ...