码迷,mamicode.com
首页 > 其他好文 > 详细

[BMC] ITSM自动接工单

时间:2019-12-16 11:45:58      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:uname   def   sele   oca   else   com   pre   send   key   

Helpdesk 的工作越来越难做了,做好服务还不够,受理工单还不能超时。 上面有要求,下面只能出对策了。还好实现起来简单。

练习通过id定位

导入webdrvier

from selenium import webdriver
from selenium.webdriver.support.select import Select
import time
from selenium.webdriver.common.action_chains import ActionChains
Uname=‘XXXX‘
Pwd=‘XXXX‘

创建一个浏览器

class Opera_ITSM():

def __init__(self,Uname=Uname,Pwd=Pwd):
    self.Uname=Uname
    self.Pwd=Pwd
    url = ‘http://ITSM.XXX.COM/arsys/shared/login.jsp?/arsys/home‘
    self.driver = webdriver.Chrome()
    self.driver.get(url)

def ITSM_Login(self):
    # time.sleep(5)

    # 定位到攻略按钮
    print(self.driver)
    el_Uname=self.driver.find_element_by_xpath(‘//*[@id="username-id"]‘)
    el_Pwd=self.driver.find_element_by_xpath(‘//*[@id="pwd-id"]‘)
    el_submit=self.driver.find_element_by_xpath(‘//*[@id="login"]‘)
    el_Uname.send_keys(self.Uname)
    print(‘U‘)
    time.sleep(1)
    el_Pwd.send_keys(self.Pwd)
    print("P")
    # 点击操作,前提是定位到元素
    time.sleep(1)
    el_submit.click()

def Take_Ticket(self):
    try:

        time.sleep(5)
        el_closeWindow=self.driver.find_element_by_xpath(‘//*[text()="已指派"]/..‘)
        el_closeWindow.click()

        check = self.driver.find_element_by_xpath(‘//*[@id="WIN_1_301428900"]/div[2]/div‘)
        check.click()

        time.sleep(2)
        el_closeWindow=self.driver.find_element_by_xpath(‘//*[@id="WIN_2_301542000"]/a‘)
        el_closeWindow.click()

        time.sleep(2)
        el_closeWindow=self.driver.find_element_by_xpath(‘//*[text()="受理事件"]‘)
        el_closeWindow.click()

        time.sleep(2)
        el_closeWindow=self.driver.find_element_by_xpath(‘//*[@id="WIN_0_616122300"]‘)
        el_closeWindow.click()
        return(True)

    except Exception as e:
        print(e,‘刷新页面‘)

        self.driver.refresh()
        return(False)

if name == ‘main‘:
ITSM=Opera_ITSM()
ITSM.ITSM_Login()
while True:
print(time.asctime( time.localtime(time.time()) ))
if ITSM.driver:
res=ITSM.Take_Ticket()
if not res:
ITSM.Take_Ticket()
print(‘等待300秒‘)
time.sleep(300)
else:
print(‘等待20秒‘)
time.sleep(20)

[BMC] ITSM自动接工单

标签:uname   def   sele   oca   else   com   pre   send   key   

原文地址:https://blog.51cto.com/unicom/2458696

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!