Python可以';t从单独的Python文件调用函数
我想从单独的Python文件调用这些函数。 我想在run.py中指定URL,并在run.py中运行download.py中的函数 但我一直在下面得到这个错误Python可以';t从单独的Python文件调用函数,python,selenium,Python,Selenium,我想从单独的Python文件调用这些函数。 我想在run.py中指定URL,并在run.py中运行download.py中的函数 但我一直在下面得到这个错误 Traceback (most recent call last): File "app.py", line 7, in <module> getTumblrPage() File "/Users/matt/Python/Instagram Bots/testing/download
Traceback (most recent call last):
File "app.py", line 7, in <module>
getTumblrPage()
File "/Users/matt/Python/Instagram Bots/testing/download.py", line 20, in getTumblrPage
driver.get(url)
NameError: name 'driver' is not defined
下面是run.py
from download import *
url = "https://vjeranski.tumblr.com/"
driver = webdriver.Chrome(executable_path="/Users/matt/Python/chromedriver")
getTumblrPage()
pageScroll()
如果要将
下载
导入运行
,下载
无法访问运行
中的变量
相反,将driver
作为以下功能的参数:
def pageScroll(driver):
. . .
def getTumblrPage(driver):
. . .
driver = webdriver.Chrome(executable_path="/Users/matt/Python/chromedriver")
getTumblrPage(driver)
pageScroll(driver)
然后在调用函数时传入:
def pageScroll(driver):
. . .
def getTumblrPage(driver):
. . .
driver = webdriver.Chrome(executable_path="/Users/matt/Python/chromedriver")
getTumblrPage(driver)
pageScroll(driver)
如果要将
下载
导入运行
,下载
无法访问运行
中的变量
相反,将driver
作为以下功能的参数:
def pageScroll(driver):
. . .
def getTumblrPage(driver):
. . .
driver = webdriver.Chrome(executable_path="/Users/matt/Python/chromedriver")
getTumblrPage(driver)
pageScroll(driver)
然后在调用函数时传入:
def pageScroll(driver):
. . .
def getTumblrPage(driver):
. . .
driver = webdriver.Chrome(executable_path="/Users/matt/Python/chromedriver")
getTumblrPage(driver)
pageScroll(driver)
Python可以很好地调用该函数。不过,函数有一个错误,因为它试图使用未定义的全局变量
driver
。Python全局变量不是贯穿整个过程的全局变量,而是模块全局变量。我建议您花些时间学习Python中的变量范围和模块。这将帮助您在将来避免这些错误。Python可以很好地调用该函数。不过,函数有一个错误,因为它试图使用未定义的全局变量driver
。Python全局变量不是贯穿整个过程的全局变量,而是模块全局变量。我建议您花些时间学习Python中的变量范围和模块。这将帮助您在将来避免这些错误。回溯(最近一次调用last):文件“app.py”,第8行,在GetTumblPage(驱动程序)类型中错误:GetTumblPage()接受0个位置参数,但1是given@mattwelter你没有注意到你的功能应该是怎样的defined@mattwelter对注意我发布的第一段代码。您需要为每个函数指定一个参数(名称在()
s中)。如果你不熟悉参数,我会查看它们,除非你目前正在学习其他的东西。它们是编程的基础,编写Python(或者任何语言)都需要对它们有很好的理解接受0个位置参数,但1为given@mattwelter你没有注意到你的功能应该是怎样的defined@mattwelter是的,请注意我发布的第一段代码。您需要为每个函数指定一个参数(名称在()
s中)。如果你不熟悉参数,我会查看它们,除非你目前正在学习其他的东西。它们是编程的基础,编写Python(或者任何语言)都需要很好地理解它们。