【发布时间】:2021-07-12 04:42:53
【问题描述】:
我有一个 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。
但是,我想在我的终端/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 文件并在终端/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 文件没有被保存,这应该是。
在终端/cmd 上运行 python 文件是否不允许保存 csv 文件? 我似乎无法弄清楚问题所在。
【问题讨论】:
-
在终端上运行 python 与笔记本没有什么不同。尝试在没有 Process 的情况下运行您的代码,并在 main 中添加一些打印语句以进行调试。
标签: python terminal jupyter-notebook multiprocessing python-multiprocessing