如何使用Python解析Selenium:TypeError:'模块'对象不可调用 [英] How to resolve Selenium with Python: TypeError: 'module' object is not callable

查看:31
本文介绍了如何使用Python解析Selenium:TypeError:'模块'对象不可调用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Selenium/Python的新手,很少练习。在pycharm中运行我的Selenium/Python程序时,我收到以下错误。请帮帮忙。

C:Users
k.maravPycharmProjectsRadhaSeleniumvenvScriptspython.exe C:/Users/rk.marav/PycharmProjects/RadhaSelenium/Tests/mainTest.py
Traceback (most recent call last):
  File "C:/Users/rk.marav/PycharmProjects/RadhaSelenium/Tests/mainTest.py", line 13, in <module>
    m.main()
  File "C:/Users/rk.marav/PycharmProjects/RadhaSelenium/Tests/mainTest.py", line 10, in main
    driver.getbrowserInstance()
  File "C:Users
k.maravPycharmProjectsRadhaSeleniumexecutionEngineDriverScript.py", line 25, in getbrowserInstance
    driver = webdriver.ie(executable_path='C:/Selenium/Drivers/IEDriverServer.exe')
TypeError: 'module' object is not callable
Main Test started...
IE
Browser invoke started

Process finished with exit code 1

下面是我的代码:

DriverScript.py:

class driverScript:

    def __init__(self,browser=None):
         if browser is None:
             browser = {}
         else:
             self.browser = browser
             print(self.browser)

         #self.constants = Constants()

    def getbrowserInstance(self):
        # create a new IE session
        print("Browser invoke started")
        if (self.browser=='IE'):
           driver = webdriver.ie(executable_path='C:/Selenium/Drivers/IEDriverServer.exe')
           driver.maximize_window()
           driver.implicitly_wait(5)
           driver.delete.allcookies()
           print("Browser is Invoked")
           driver.get("http://www.store.demoqa"
                       ".com")

mainTest.py

from executionEngine.DriverScript import driverScript
from Utilities.Constants import Constants
from selenium import webdriver

class mainTest(driverScript):

    def main(self):
        print("Main Test started...")
        driver = driverScript('IE')
        driver.getbrowserInstance()

m = mainTest()
m.main()

推荐答案

此错误消息.

    driver = webdriver.ie(executable_path='C:/Selenium/Drivers/IEDriverServer.exe')
TypeError: 'module' object is not callable

.表示webdriver.ie是一个模块,不可调用

@JohnGordon在他的分析中相当正确。selenium.webdriver.ie.webdriver是与Selenium相关的Python Module之一,不可调用

若要通过启动会话,您需要将较小的i替换为大写I。因此,实际上您的代码行将是:

driver = webdriver.Ie(executable_path=r'C:SeleniumDriversIEDriverServer.exe')

您可以在TypeError: 'module' object is not callable error with driver=webdriver("C:Python34Libsite-packagesseleniumwebdriverchromedriver.exe")

中找到相关讨论

这篇关于如何使用Python解析Selenium:TypeError:&amp;#39;模块&amp;#39;对象不可调用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆