swsyth_kp_spxz_khxz_js

代码如下:

  1 #导包
  2 from selenium import webdriver
  3 from time import sleep
  4 driver=webdriver.Chrome()
  5 url="https://192.168.21.150/"
  6 driver.implicitly_wait(10)
  7 #通过url打开事务所页面
  8 driver.get(url)
  9 driver.maximize_window()
 10 #获取当前事务所窗口句柄
 11 first_handle=driver.current_window_handle
 12 #通过js打开js_one事务所页面
 13 sleep(3)
 14 js_one='window.open("https://192.168.21.150/");'
 15 driver.execute_script(js_one)
 16 #通过js打开js_two事务所页面
 17 sleep(1)
 18 js_two='window.open("https://192.168.21.150/");'
 19 driver.execute_script(js_two)
 20 #获取所有窗口句柄集合
 21 handles=driver.window_handles
 22 #打印所有窗口句柄集合
 23 print(handles)
 24 
 25 #切换到js_two窗口,并进行kp操作
 26 for handle in handles:
 27     if handle!=first_handle:
 28         driver.switch_to.window(handle)
 29         print(driver.current_window_handle) #打印js_two窗口句柄
 30         sleep(1)
 31         #进行kp操作,代码如下:
 32         #选择用户名框,输入用户名cskczy
 33         driver.find_element_by_xpath('//input[@name="userid"]').send_keys("cskczy")
 34         #选择密码框,输入密码88888888
 35         driver.find_element_by_xpath('//input[@name="password"]').send_keys("88888888")
 36         #点击登录按钮
 37         driver.find_element_by_xpath('//button[@class="login-btn"]').click()
 38         #关闭事务所申报和修改密码的窗口
 39         sleep(2)
 40         driver.find_element_by_xpath('//*[@id="layui-layer2"]/div[3]/a[1]').click()
 41         sleep(1)
 42         driver.find_element_by_xpath("//*[@id='layui-layer1']/span[1]").click()
 43         # 点击左边票据管理按钮
 44         driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[3]').click()
 45         # 点击票据管理层级下的单据管理按钮
 46         driver.find_element_by_xpath('//a[@data-url="/home/bill/ndjgl.html"]').click()
 47         # 停顿1秒,进入iframe页面
 48         sleep(1)
 49         # iframe=driver.find_element_by_xpath('//*[@id="top_tabs_box"]/div/div[3]/iframe')
 50         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))
 51         # 停顿1秒,点击iframe页面中的新增按钮
 52         sleep(1)
 53         driver.find_element_by_xpath('//*[@class="layui-btn-group"]/button/i').click()
 54         '''
 55         退出到外面,再进第二个iframe
 56         #driver.switch_to.default_content()
 57         #切到第一个iframe
 58         #sleep(1)
 59         #driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))
 60         #切到第二个iframe
 61         '''
 62         # 此时本来就在第二个iframe里面,所以只要再切入一层即可。
 63         sleep(1)
 64         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"djdr-add")]'))
 65         # 点击销方名称右边的按钮
 66         sleep(1)
 67         driver.find_element_by_xpath(
 68             '//*[@id="lzkp-box"]/tbody/tr/td[2]/table/tbody/tr[1]/td/table/tfoot/tr[1]/td[1]/i').click()
 69         # 获取销方信息的弹窗,从最外面切进去3层iframe
 70         driver.switch_to.default_content()
 71         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"/home/bill/ndjgl")]'))
 72         sleep(1)
 73         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"djdr-add")]'))
 74         sleep(1)
 75         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"xfxx")]'))
 76         # 在销方信息弹窗的文本框输入"051"
 77         driver.find_element_by_xpath('//*[@id="name"]').send_keys("051")
 78         # 点击查询按钮,找到简码为TEST的企业
 79         sleep(1)
 80         driver.find_element_by_xpath('//button[@class="layui-btn  search"]').click()
 81         # 点击简码为051的企业税号
 82         sleep(1)
 83         driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr[1]/td[2]').click()
 84         # 回退到发票填开界面,也就是销方信息弹窗的上一个iframe页面
 85         # 这里有两种方法切入:1.从最外面切入两层进去;2.从销方信息的iframe回退上去到发票填开的iframe
 86         driver.switch_to.parent_frame()
 87         # 回到发票填开页面后,点击购方名称最右边的按钮
 88         sleep(1)
 89         driver.find_element_by_xpath(
 90             '//*[@id="lzkp-box"]/tbody/tr/td[2]/table/tbody/tr[1]/td/table/thead/tr[1]/td[1]/i').click()
 91         # 此时弹出购方信息的窗口iframe
 92         # 我们本来就在发票填开的第二个iframe,只需要再切入一层即可。
 93         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"gfxx")]'))
 94         # 切入到购房信息的iframe后,选择输入框,输入客户名称:王昭君
 95         sleep(1)
 96         driver.find_element_by_xpath('//*[@id="name"]').send_keys("王昭君")
 97         # 点击查询按钮,搜索到客户名称为王昭君的企业
 98         driver.find_element_by_xpath('//button[@class="layui-btn search"]').click()
 99         # 点击客户税号为91330200513697175C的企业
100         sleep(1)
101         driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr[1]/td[2]').click()
102         # 又回到了发票填开界面,也就是第二个iframe页面,所以要从购方名称弹窗iframe回退
103         driver.switch_to.parent_frame()
104         # 这样就回退到开票页面的iframe,可以直接操作页面上的元素了,点击操作列:货物或应税劳务、服务名称右边的按钮
105         sleep(1)
106         driver.find_element_by_xpath('//*[@id="tr0"]/td[1]/i').click()
107         # 此时弹出了商品信息窗口,又是一层iframe,需要从开票信息第二层的iframe切进去
108         sleep(1)
109         driver.switch_to.frame(driver.find_element_by_xpath('//iframe[contains(@src,"goods")]'))
110         # 切入商品信息iframe后,在商品名称框输入:11号慢羊羊
111         driver.find_element_by_xpath('//*[@id="name"]').send_keys("11号慢羊羊")
112         # 点击查询按钮,搜索到商品名称为11号慢羊羊的商品
113         driver.find_element_by_xpath('//button[@class="layui-btn search"]').click()
114         # 帅选出这条商品后,点击它的税收分类编码确定这条商品
115         sleep(1)
116         driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr/td[2]/div').click()
117         # 退回到开票页面的iframe,在备注栏输入:哈哈哈,就是这么强大!
118         driver.switch_to.parent_frame()
119         sleep(1)
120         driver.find_element_by_xpath('//*[@id="bz"]').send_keys("人生苦短,我用Python!")
121         # 选择数量框输入:10
122         driver.find_element_by_xpath('//*[@id="spsl_0"]').send_keys("10")
123         # 点击金额(含税)框
124         driver.find_element_by_xpath('//*[@id="je_0"]').click()
125         # 点击开票按钮
126         driver.find_element_by_xpath('//*[@class="layui-inline pull-right"]/button[7]').click()
127         sleep(3)
128         break
129 driver.close() #关闭当前窗口(js_two)
130 
131 #此时还剩两个窗口,倒着获取js_one的窗口句柄
132 for handle in handles:
133     if handle!=first_handle:
134         driver.switch_to.window(handles[-1]) #剩2个句柄,取最后一个
135         print(driver.current_window_handle) #输出当前句柄(js_one)
136         #进行khxz操作,代码如下:
137         sleep(1)
138         # 选择用户名框,输入用户名cskczy
139         driver.find_element_by_xpath('//input[@name="userid"]').send_keys("cskczy")
140         # 选择密码框,输入密码88888888
141         driver.find_element_by_xpath('//input[@name="password"]').send_keys("88888888")
142         # 点击登录按钮
143         driver.find_element_by_xpath('//button[@class="login-btn"]').click()
144         # 登录后等待1秒,关闭事务所申报和修改密码的弹窗。
145         sleep(2)
146         driver.find_element_by_xpath('//*[@id="layui-layer2"]/div[3]/a[1]').click()
147         sleep(1)
148         driver.find_element_by_xpath("//*[@id='layui-layer1']/span[1]").click()
149         # 点击左边导航栏的基础管理
150         driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[2]').click()
151         # 点击基础管理里面的客户管理
152         driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[2]/dl/dd[3]/a/cite').click()
153         # 整体思路:点击新增按钮,但需要进到表单iframe1 src="/home/sys/khgl/khxx.html" 操作元素
154         iframe1 = driver.find_element_by_xpath('//iframe[contains(@src,"/home/sys/khgl/khxx.html")]')
155         driver.switch_to.frame(iframe1)  # 成功进入到iframe1
156         # 在iframe1操作新增按钮
157         driver.find_element_by_xpath('//*[@class="layui-form m-form"]/div[3]/button[1]/i').click()
158         sleep(1)  # 等待1秒加载"选择企业税号"的弹窗
159         driver.switch_to.default_content()  # f返回主文档
160         # 获取"选择企业税号"的弹窗定义为iframe2
161         iframe2 = driver.find_element_by_xpath('//*[@id="layui-layer-iframe3"]')
162         # 进入到iframe2窗口,操作表单上的元素
163         driver.switch_to.frame(iframe2)
164         sleep(1)  # 等待1秒
165         # 选择企业税号框,并输入330203999999051
166         driver.find_element_by_xpath('//*[@id="qysh"]').send_keys("330203999999051")
167         driver.find_element_by_xpath('//*[@class="layui-inline"]/button[1]').click()  # 点击查询按钮
168         # 勾选税号为330203999999051的企业
169         driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr/td[1]/div/div/i').click()
170         driver.find_element_by_xpath('//*[@class="layui-inline"]/button[2]').click()  # 点击确定按钮
171         driver.switch_to.default_content()  # 返回到主文档
172         # 进入到iframe1表单操作新增按钮
173         driver.switch_to.frame(iframe1)
174         driver.find_element_by_xpath('//*[@class="layui-form m-form"]/div[3]/button[1]/i').click()  # 点击新增按钮
175         driver.switch_to.default_content()  # 返回到主文档
176         # 获取"新增客户信息"的弹窗定义为iframe3
177         sleep(1)
178         iframe3 = driver.find_element_by_xpath('//*[@id="layui-layer-iframe4"]')
179         # 进入到iframe3窗口,操作表单上的元素
180         driver.switch_to.frame(iframe3)
181         sleep(1)  # 等待1秒
182         # 新增客户,维护必填项
183         driver.find_element_by_xpath('//*[@id="name"]').send_keys("宁波技冠智能科技发展股份有限公司")  # 输入客户名称
184         driver.find_element_by_xpath('//*[@id="customer_sh"]').send_keys("91330200573697175C")  # 输入客户税号
185         driver.find_element_by_xpath('//*[@id="short_code"]').send_keys("121212121C")  # 输入客户简码
186         driver.find_element_by_xpath('//*[@id="email"]').send_keys('123456789@qq.com')  # 输入电子邮箱
187         driver.find_element_by_xpath('//*[@class="layui-form-item opt-margin-bottom"]/div/div/textarea').send_keys(
188             "人生苦短,我用Python")  # 输入备注
189         driver.find_element_by_xpath('//*[@class="layui-form layui-form-pane"]/div[5]/button').click()  # 点击"添加行"按钮
190         sleep(1)  # 等待1秒
191         driver.find_element_by_xpath(
192             '//*[@class="layui-table-body layui-table-main"]/table/tbody/tr/td[1]/div').click()  # 点击"地址及电话输入框"
193         sleep(1)  # 等待1秒
194         driver.find_element_by_xpath(
195             '//*[@class="layui-table-body layui-table-main"]/table/tbody/tr/td[1]/input').send_keys(
196             "宁波研发园88887777")  # 输入地址及电话
197         driver.find_element_by_xpath('//*[@class="layui-table-body layui-table-main"]/table/tbody/tr/td[2]/div').click()
198         sleep(1)  # 等待1秒
199         driver.find_element_by_xpath(
200             '//*[@class="layui-table-body layui-table-main"]/table/tbody/tr/td[2]/input').send_keys(
201             "中国银行6228480310540239011")  # 输入开户行及账号
202         driver.find_element_by_xpath(
203             '//*[@class="layui-table-box"]/div[2]/table/tbody/tr/td[4]/div/a[2]').click()  # 点击"设为默认"按钮
204         sleep(1)  # 等待1秒
205         driver.find_element_by_xpath('//*[@class="layui-form layui-form-pane"]/div[7]/div/button[1]').click()  # 点击保存按钮
206         # 获取弹窗信息的确定按钮
207         driver.switch_to.default_content()  # 返回主文档
208         sleep(2)  # 等待2秒
209         #driver.find_element_by_xpath('//*[@id="layui-layer6"]/div[3]/a').click()  # 提示:保存成功,点击"确定"按钮
210         #sleep(1)
211         # 至此事务所一体化客户新增的脚本完成
212         break
213 driver.close() #关闭当前窗口(js_one)
214 
215 #还剩下一个窗口,获取句柄(first_handle)并进行spxz操作,代码如下:
216 driver.switch_to.window(first_handle)
217 sleep(1)
218 #选择用户名框,输入用户名cskczy
219 driver.find_element_by_xpath('//input[@name="userid"]').send_keys("cskczy")
220 #选择密码框,输入密码88888888
221 driver.find_element_by_xpath('//input[@name="password"]').send_keys("88888888")
222 #点击登录按钮
223 driver.find_element_by_xpath('//button[@class="login-btn"]').click()
224 #登录后等待1秒,关闭事务所申报和修改密码的窗口
225 sleep(2)
226 driver.find_element_by_xpath('//*[@id="layui-layer2"]/div[3]/a[1]').click()
227 sleep(1)
228 driver.find_element_by_xpath("//*[@id='layui-layer1']/span[1]").click()
229 #点击左边导航栏的基础管理
230 driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[2]').click()
231 #点击基础管理里面的商品管理
232 driver.find_element_by_xpath('//ul[@class="layui-nav layui-nav-tree"]/li[2]/dl/dd[4]/a').click()
233 #整体思路:点击新增按钮,但需要进到表单iframe1 src="/home/sys/goods/goods.html" 操作元素
234 iframe1=driver.find_element_by_xpath('//iframe[contains(@src,"/home/sys/goods/goods.html")]')
235 driver.switch_to.frame(iframe1)  #成功进到iframe1
236 #在iframe1操作新增按钮
237 driver.find_element_by_xpath('//*[@class="layui-form m-form"]/div[3]/button[1]/i').click()
238 sleep(1)  #等待1秒加载"选择企业税号"的弹窗
239 driver.switch_to.default_content()  #返回主文档
240 # 获取"选择企业税号"的弹窗定义为iframe2
241 iframe2=driver.find_element_by_xpath('//*[@id="layui-layer-iframe3"]')
242 #进入到iframe2窗口,操作表单上的元素
243 driver.switch_to.frame(iframe2)
244 sleep(1)  #等待1秒
245 #选择企业税号框,并输入330203999999051
246 driver.find_element_by_xpath('//*[@id="qysh"]').send_keys("330203999999051")
247 driver.find_element_by_xpath('//*[@class="layui-inline"]/button[1]').click()  #点击查询按钮
248 #勾选税号为330203999999051的企业
249 driver.find_element_by_xpath('//*[@class="layui-table"]/tbody/tr/td[1]/div/div/i').click()
250 driver.find_element_by_xpath('//*[@class="layui-inline"]/button[2]').click()  #点击确定按钮
251 driver.switch_to.default_content()  #返回到主文档
252 #进入到iframe1表单操作新增按钮
253 driver.switch_to.frame(iframe1)
254 driver.find_element_by_xpath('//*[@class="layui-form m-form"]/div[3]/button[1]/i').click()  #点击新增按钮
255 driver.switch_to.default_content()  #返回到主文档
256 #获取"新增商品信息"的弹窗定义为iframe3
257 iframe3=driver.find_element_by_xpath('//*[@id="layui-layer-iframe4"]')
258 #进入到iframe3窗口,操作表单上的元素
259 driver.switch_to.frame(iframe3)
260 sleep(1)  #等待1秒
261 #新增商品,维护必填项
262 driver.find_element_by_xpath('//*[@id="name"]').send_keys("spmc")  #输入商品名称
263 driver.find_element_by_xpath('//*[@id="ggxh"]').send_keys("ggxh")  #输入规格型号
264 driver.find_element_by_xpath('//*[@id="jldw"]').send_keys("jldw")  #输入计量单位
265 driver.find_element_by_xpath('//*[@id="dj"]').send_keys("10")  #输入商品单价
266 #选择税收分类编码的过程
267 driver.find_element_by_xpath('//*[@id="ssflbm"]').click()  #点击税收分类编码输入框
268 driver.switch_to.default_content()  #返回主文档
269 #获取"税收分类编码"的弹窗定义为iframe4
270 iframe4=driver.find_element_by_xpath('//*[@id="layui-layer-iframe5"]')
271 #进入到iframe4窗口,操作表单上的元素
272 driver.switch_to.frame(iframe4)
273 #在名称框输入:小麦
274 driver.find_element_by_xpath('//*[@id="spmc"]').send_keys("小麦")
275 driver.find_element_by_xpath('//*[@class="layui-form"]/div/div/button[1]').click()  #点击查询按钮
276 #勾选名称为小麦的这条税收分类编码
277 driver.find_element_by_xpath('//*[@class="layui-form layui-border-box layui-table-view"]/div[1]/div[2]/table/tbody/tr[1]/td[1]/div/div/i').click()
278 driver.find_element_by_xpath('//*[@class="layui-form"]/div/div/button[2]').click()  #点击确定按钮
279 #退出表单iframe4,回到上一级表单iframe3
280 driver.switch_to.parent_frame()
281 driver.switch_to.frame(iframe3)  #进入到iframe3"新增商品信息"的表单
282 #选择优惠政策类型为"免税"
283 sleep(1)  #等待1秒
284 driver.find_element_by_xpath('//*[@class="layui-form layui-form-pane"]/div[5]/div[2]/div/div/div/input').click()  #点击"优惠政策类型"弹出下来框
285 sleep(1)  #等待1秒
286 driver.find_element_by_xpath('//*[@class="layui-form layui-form-pane"]/div[5]/div[2]/div/div/dl/dd[2]').click()  #选择"免税"
287 driver.find_element_by_xpath('//*[@id="short_code"]').send_keys("spjm")  #输入商品简码
288 driver.find_element_by_xpath('//*[@class="layui-form-item"]/div/button[1]').click()  #点击保存按钮
289 driver.switch_to.default_content()  #返回主文档
290 sleep(1)  #等待1秒
291 driver.find_element_by_xpath('//*[@id="layui-layer7"]/div[3]/a').click()  #点击弹窗上的"保存"按钮
292 #至此事务所一体化商品新增的脚本完成
293 sleep(3)
294 driver.quit() #关闭并退出浏览器

 

转载于:https://www.cnblogs.com/chenshengkai/p/11346778.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值