sws_kp操作(selenium webdriver+python)
代码如下:
1 #导包 2 from selenium importwebdriver3 from time importsleep4 #选择谷歌浏览器打开事务所网站 5 driver=webdriver.Chrome()6 url="https://sws.nbhtxx.com.cn/" 7 driver.get(url)8 #窗口最大化 9 driver.maximize_window()10 #选择用户名框,输入用户名XXXXXXXX 11 driver.find_element_by_xpath('//input[@name="userid"]').send_keys("XXXXXXXX")12 #选择密码框,输入密码XXXXXXXX 13 driver.find_element_by_xpath('//input[@name="password"]').send_keys("XXXXXXXX")14 #点击登录按钮 15 driver.find_element_by_xpath('//button[@class="login-btn"]').click()16 #登录后停顿1秒 17 sleep(1)18 #点击左边票据管理按钮 19 driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[3]').click()20 #点击票据管理层级下的单据管理按钮 21 driver.find_element_by_xpath('//a[@data-url="/home/bill/ndjgl.html"]').click()22 #停顿1秒,进入iframe页面 23 sleep(1)24 #iframe=driver.find_element_by_xpath('//*[@id="top_tabs_box"]/div/div[3]/iframe') 25 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))26 #停顿1秒,点击iframe页面中的新增按钮 27 sleep(1)28 driver.find_element_by_xpath('//*[@class="layui-btn-group"]/button[2]').click()29 #退出到外面,再进第二个iframe 30 driver.switch_to.default_content()31 #切到第一个iframe 32 sleep(1)33 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))34 #切到第二个iframe 35 sleep(1)36 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"djdr-add")]'))37 #点击销方名称右边的按钮 38 sleep(1)39 driver.find_element_by_xpath('//*[@id="lzkp-box"]/tbody/tr/td[2]/table/tbody/tr[1]/td/table/tfoot/tr[1]/td[1]/i').click()40 #获取销方信息的弹窗,从最外面切进去3层iframe 41 driver.switch_to.default_content()42 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))43 sleep(1)44 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"djdr-add")]'))45 sleep(1)46 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"xfxx")]'))47 #在销方信息弹窗的文本框输入"TEST" 48 driver.find_element_by_xpath('//*[@id="name"]').send_keys("TEST")49 #点击查询按钮,找到简码为TEST的企业 50 sleep(1)51 driver.find_element_by_xpath('//button[@class="layui-btn search"]').click()52 #点击简码为TEST的企业税号 53 sleep(1)54 driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr[1]/td[2]').click()55 #回退到发票填开界面,也就是销方信息弹窗的上一个iframe页面 56 #这里有两种方法切入:1.从最外面切入两层进去;2.从销方信息的iframe回退上去到发票填开的iframe 57 driver.switch_to.parent_frame()58 #回到发票填开页面后,点击购方名称最右边的按钮 59 sleep(1)60 driver.find_element_by_xpath('//*[@id="lzkp-box"]/tbody/tr/td[2]/table/tbody/tr[1]/td/table/thead/tr[1]/td[1]/i').click()61 #此时弹出购方信息的窗口iframe 62 #我们本来就在发票填开的第二个iframe,只需要再切入一层即可。 63 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"gfxx")]'))64 #切入到购房信息的iframe后,选择输入框,输入客户名称:王昭君 65 sleep(1)66 driver.find_element_by_xpath('//*[@id="name"]').send_keys("王昭君")67 #点击查询按钮,搜索到客户名称为王昭君的企业 68 driver.find_element_by_xpath('//button[@class="layui-btn search"]').click()69 #点击客户税号为91330200573697175C的企业 70 sleep(1)71 driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr[1]/td[2]').click()72 #又回到了发票填开界面,也就是第二个iframe页面,所以要从购方名称弹窗iframe回退 73 driver.switch_to.parent_frame()74 #这样就回退到开票页面的iframe,可以直接操作页面上的元素了,点击操作列:货物或应税劳务、服务名称右边的按钮 75 sleep(1)76 driver.find_element_by_xpath('//*[@id="tr0"]/td[1]/i').click()77 #此时弹出了商品信息窗口,又是一层iframe,需要从开票信息第二层的iframe切进去 78 sleep(1)79 driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"goods")]'))80 #切入商品信息iframe后,在商品名称框输入:11号慢羊羊 81 driver.find_element_by_xpath('//*[@id="name"]').send_keys("11号慢羊羊")82 #点击查询按钮,搜索到商品名称为11号慢羊羊的商品 83 driver.find_element_by_xpath('//button[@class="layui-btn search"]').click()84 #帅选出这条商品后,点击它的税收分类编码确定这条商品 85 sleep(1)86 driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr/td[2]/div').click()87 #退回到开票页面的iframe,在备注栏输入:哈哈哈,就是这么强大! 88 driver.switch_to.parent_frame()89 sleep(1)90 driver.find_element_by_xpath('//*[@id="bz"]').send_keys("人生苦短,我用Python!")91 #选择数量框输入:10 92 driver.find_element_by_xpath('//*[@id="spsl_0"]').send_keys("10")93 #点击金额(含税)框 94 driver.find_element_by_xpath('//*[@id="je_0"]').click()95 #点击开票按钮 96 driver.find_element_by_xpath('//*[@class="layui-inline pull-right"]/button[7]').click()97 #至此事务所一体化开票的脚本写完了,感谢CCTV~
转载于:https://www.cnblogs.com/chenshengkai/p/11298005.html
sws_kp操作(selenium webdriver+python)相关推荐
- Selenium WebDriver + python 自动化测试框架
目标 组内任何人都可以进行自动化测试用例的编写 完全分离测试用例和自动化测试代码,就像写手工测试用例一下,编写excel格式的测试用例,包括步骤.检查点,然后执行自动化工程,即可执行功能自动化测试用例 ...
- selenium webdriver python 元素操作
常用操作 click 点击某个元素 driver.find_element_by_id("su").click() clear driver.find_element_by_id( ...
- python webdriver点击指令_测开系列Selenium Webdriver Python(20)--Webdriver运行原理
Webdriver运行原理 转帖请注明出处!谢谢 在开发Webdriver的自动化脚本过程中,Webdriver后台在创建WebDriver实例的过程中,先确认浏览器的原生组件中是否存在可匹配的版本. ...
- selenium webdriver (python)的基本用法一
阅在线 AIP 文档: http://selenium.googlecode.com/git/docs/api/py/index.html 目录 一.selenium+python 环境搭建..... ...
- 测开系列Selenium Webdriver Python(21)--元素定位2
以上学习的是element的基本属性和方法,那么验证点添加的技巧和方式是什么呢?我们知道自动化的过程就是人的手工测试的过程,在手工测试中需要人来判断业务是否达到需求要求,那么在自动化脚本中就要加入程序 ...
- selenium webdriver (python) 第一版PDF
前言 如果你是一位有python语言基础的同学,又想通过python+ selenium去实施自动化,那么你非常幸运的找到了这份文档,我也非常荣幸能为你的自动化学习之路带来一丝帮助. 其实,我在sel ...
- Linux运行webdriver,linux - 在chrome中运行Selenium WebDriver python绑定
我在使用Selenium时遇到了问题. 对于我的项目,我必须使用Chrome. 但是,在使用Selenium启动它后,我无法连接到该浏览器. 出于某种原因,Selenium无法单独找到Chrome. ...
- 转:selenium webdriver+python基本操作
转自: http://blog.163.com/ly676830315@126/blog/static/1017337222013102310617946/ 导入模块: from selenium i ...
- selenium webdriver python 环境搭建
1. 安装python https://www.python.org/getit/ 选择2.7版本,下载安装即可. 验证是否安装成功:打开cmd,输入"python -V",显示p ...
最新文章
- python中删除列表中的空元素以及如何读取excel中的数据
- java程序向mysql插入中文变问号
- linq to sql 插入值,以及如何取回自增的ID
- MySQL存储过程简介
- oracle 登录非系统用户,非Oracle用户使用操作系统验证登陆(/ as sysdba)
- excel中怎样用公式获取表单控件_老会计不愿教的工资表汇总公式,真是太好用了...
- 快速实现一个Http回调组件
- 从一个OutOfMemoryError 学会了分析Java内存泄漏问题
- IOS 代码控制控件始终居中
- 有关二叉树方法java实现
- 利用project编制进度计划
- 什么是DOS操作系统
- 生活中的逻辑谬误06.德克萨斯神枪手
- 计算机工程师标准着装,工程师穿什么样的衣服才好看
- @vuecomposition-apidistvue-composition-api.mjs in .node_modulesvue-demilibindex.mjs 报错
- 华为企业交换机ACL经典案例
- Google Map API 使用总结
- 数据库bigint转为JAVA中的String
- google maps v3 电子地图测距
- 论 “运营主导型的研发” 和 “产品主导型的研发”