简单写了一个邮箱登陆 有一些入门的知识难点可以看一下
# 从 selenium 中导入 webdriver from selenium import webdriver from selenium.webdriver.common.by import By from time import sleep # 设置驱动程序 driver = webdriver.Chrome() # 设置等待时间 # 最大化窗口 driver.maximize_window() driver.implicitly_wait(5) # 设置打开的网址 # 百度 driver.get("https://www.baidu.com") # 邮箱 # driver.get("https://mail.163.com/") # 搜索内容 sleep(2) driver.find_element(By.ID,"kw").send_keys("163邮箱") # 点击搜索按钮 sleep(2) driver.find_element(By.ID,"su").click() # 通过绝对路径获取到第一个查询道德的结果 但是不能排除是否存在广告数据 sleep(2) driver.find_element(By.XPATH,'//div[@id="content_left"]/div[1]/div[1]/div[1]/h3[1]/a[1]').click() # 绝对路径找到iframe # 登陆 driver.delete_all_cookies() sleep(2) # 进入登陆的ifarme windows = driver.current_window_handle #定位当前页面句柄 all_handles = driver.window_handles # 获取全部页面句柄 for handle in all_handles: # 遍历全部页面句柄 if handle != windows: # 判断条件 如果当前的展示的页面不是最开始的页面那么将切换页面 driver.switch_to.window(handle) # 进入163邮箱的用户输入表单 driver.switch_to.frame(driver.find_element(By.XPATH,"/html[1]/body[1]/div[2]/div[3]/div[1]/div[1]/div[4]/div[1]/div[1]/iframe[1]")) # 输入信息 driver.find_element(By.NAME,"email").send_keys("") driver.find_element(By.NAME,"password").send_keys("") sleep(1) driver.find_element(By.ID,"dologin").click() # 退出之前登陆的iframe driver.switch_to.default_content() driver.implicitly_wait(5) # 收件箱 driver.find_element(By.XPATH,"/html[1]/body[1]/div[1]/nav[1]/div[1]/ul[1]/li[1]").click() sleep(2) driver.find_element(By.XPATH,"/html[1]/body[1]/div[1]/nav[1]/div[1]/ul[1]/li[2]").click() sleep(1) # 收件人 driver.find_element(By.XPATH,"/html[1]/body[1]/div[2]/div[1]/div[3]/div[1]/section[1]/header[1]/div[1]/div[1]/div[1]/div[2]/div[1]/input[1]").send_keys("[email protected]") driver.find_element(By.XPATH,"//div[@class='bz0']/div/input[@class='nui-ipt-input']").send_keys("测试标题") driver.find_element(By.CLASS_NAME, 'O0').send_keys(r'C:\Users\AA\Desktop\1.jpg') # 进入iframe driver.switch_to.frame(driver.find_element(By.CLASS_NAME,'APP-editor-iframe')) sleep(1) driver.find_element(By.CLASS_NAME,'nui-scroll').send_keys("这是内容") sleep(1) # 返回之前的iframe driver.switch_to.default_content() sleep(1) driver.find_element(By.XPATH,'//footer[@class="jp0"]/div/span').click() # 隐式等待 sleep(1) driver.implicitly_wait(10) driver.find_element(By.LINK_TEXT,"查看已发邮件").click()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。