运行 终端上的文件与 Jupyter Notebook 上的 运行 不一样吗?

Running file on Terminal not doing the same thing as running on Jupyter Notebook?

我有一个 python 文件,基本上 运行 是一个 main() 函数,它根据给定的关键字抓取数据。 我正在尝试进行多处理,所以我在 Jupyter Notebook 中的主要功能看起来像

p1 = multiprocessing.Process(target=main, args=['cosmetics'])
p2 = multiprocessing.Process(target=main, args=['airpod pro case'])

if __name__ == '__main__':
    p1.start()
    p2.start()

现在这个 运行 非常完美,它基本上是抓取给定关键字的数据,将其保存到 csv 文件(在这种情况下,'cosmetics.csv' 和 'airpod pro case.csv' 然后调用另一个函数来遍历保存的 csv 文件中包含 url 的每一列。

但是,我想在我的 terminal/cmd 上 运行 这个,我将上面的代码更改为:

def multi_process(item_1, item_2):
    p1 = multiprocessing.Process(target=main, args=[item_1])
    p2 = multiprocessing.Process(target=main, args=[item_2])
    #p3 = multiprocessing.Process(target=main, args=['hair dryer'])

    if __name__ == '__main__':
        p1.start()
        p2.start()
        #p3.start()
    
item_1 = sys.argv[1]
item_2 = sys.argv[2]
multi_process(item_1, item_2)

然后我将文件保存为 .py 文件,运行 我的 terminal/cmd

上的这一行
> python3 /Users/Name/Desktop/DE/Scrape.py "cosmetics" "airpod pro case"

FileNotFoundError: [Errno 2] File b'/Users/Name/Desktop/DE/cosmetics 1.csv' does not exist: b'/Users/Name/Desktop/DE/cosmetics 1.csv'

FileNotFoundError: [Errno 2] File b'/Users/Name/Desktop/DE/airpod pro case 1.csv' does not exist: b'/Users/Name/Desktop/DE/airpod pro case 1.csv'

我收到此错误消息,提示找不到 csv 文件,这让我检查了文件夹,发现 csv 文件没有保存,而应该保存。

运行ning python 文件在 termina/cmd 上是否不允许保存 csv 文件? 我似乎无法弄清楚问题是什么。

我在这里看到的唯一问题是 Does running python file on termina/cmd not allow saving csv files? 答案是否定的...通常可以在命令行中保存 csv 文件

open("output.csv","w") as f:
   f.write("this,is\na,csv")

不,并不是说 运行 使用终端打开模块不会保存文件,这实际上是 运行 python 模块的方式。检查你的 main() 是否真的在写 CSV 文件。

我的坏人,我犯了一个愚蠢的错误。我实际上并没有执行 cd Desktop/DE 去我的 terminal/cmd 行上的 DE 文件夹和 运行 我刚打开 terminal/cmd 时的代码,使文件自动保存其他地方。