python 调用js_python中执行js

classerp_canvas_driver( browserDriver):__inject_js_files__ =[]def __init__(self):

browserDriver.__init__(self)

self.inject_js_files=[

os.path.join(self.rootPath,‘lib/erp/javascripts/ERPOAL.js‘),

os.path.join(self.rootPath,‘lib/erp/javascripts/ERPActors.js‘),

os.path.join(self.rootPath,‘lib/erp/javascripts/browser_utils.js‘)

]def openPage(self, url=‘/ERP‘):ifbrowserDriver.openPage(self, url):

self.__initHelper__()def __injectJSCode__(self, path):

js_lines=[]

file=open(os.path.abspath(path))for line infile:

js_lines.append(line)

self.browser.execute_script(‘\n‘.join(js_lines))def __initHelper__(self):for path inself.inject_js_files:

self.__injectJSCode__(path)

time.sleep(1)defnavigateByButton(self, button_name):

self.clickERPButton(button_name)

time.sleep(5)try:

WebDriverWait(self.browser,10).until(

EC.presence_of_element_located((By.ID,"obj1"))

)finally:

self.__initHelper__()defclickERPButton(self, name):

code= ‘mouseClick("{0}")‘.format(name)

self.browser.execute_script(code)defpressERPButton(self, name):

code= ‘mousePress("{0}")‘.format(name)

self.browser.execute_script(code)defreleaseERPButton(self, name):

code= ‘mouseRelease("{0}")‘.format(name)

self.browser.execute_script(code)def waitDisplayUpdate(self, name, property, expect_value, timeout=20):

n= min(int(timeout / 0.2), 50)for i inrange(n):

value= self.browser.execute_script(‘return ERPGetElementProperty("{0}", "{1}")‘.format(name, property))if value ==expect_value:returnTrue

time.sleep(0.2)returnFalsedefgetElementProperty(self, name, property):return self.browser.execute_script(‘return ERPGetElementProperty("{0}", "{1}")‘.format(name, property))def setElementProperty(self, name, property, value, isDigit=False):ifisDigit:

self.browser.execute_script(‘ERPSetElementProperty("{0}", "{1}", {2});‘.format(name, property, value))else:

self.browser.execute_script(‘ERPSetElementProperty("{0}", "{1}", "{2}");‘.format(name, property, value))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值