繁体   English   中英

无法在 Python 中的另一个文件中使用 Selenium WebDriver

[英]Can't use Selenium WebDriver in another file in Python

我在WebDriverFactory.py中创建了一个生成 Webdriver object 的方法:

#!python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

def generer_chrome_driver():
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
    return driver

当我想在另一个文件test.py中使用这个 Webdriver object 时,没有出现 Webdriver 方法:

#!python
import webdriverFactory

driver = webdriverFactory.generer_chrome_driver
driver. --> no methods

但是如果我直接在test.py中做同样的事情,那么我就可以访问所有 Webdriver 方法,比如 .get(url):

#!python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get('www.google.fr')

我是Python的新人,不知道是不是语言的精妙之处没看出来。。。谢谢大家的帮助。

我假设你在同一个目录中有这两个文件(或者 ˋWebDriver.pyˋ 在 ˋPYTHONPATHˋ 的其他地方)。

在这种情况下,您可能只是缺少 generer_chrome_driver 之后的括号。

driver = webdriverFactory.generer_chrome_driver()

如果您依赖您的 IDE 向您展示可用的方法,它可能会误导您。 有时只是自动补全失败,但你可以手动输入方法名,保存文件,然后尝试运行脚本,它会告诉你方法是否真的不可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM