我正在创建一个多进程,用于创建CSV文件。当我使用d.daemon = False
运行代码时,它能正常工作,即在同一文件夹中创建文件。但是当使用d.daemon = True
编译并运行时,它就不起作用了,也就是说不会创建文件。为什么呢?
我的代码
我有一个种子URL列表,需要从中爬取数据。
for url in config.SEED_LIST:
# starting a new process for each category.
d = multiprocessing.Process(target=workers.scrape, args=())
d.daemon = True
d.start()
def scrape():
import time
time.sleep(5)
# The above part of code takes some time to scrape a webpage, applying
# some logic, which takes some time to execute, hence I've added a time
# sleep of 5 secs. But when run with daemon = True, the file is not
# created. Else it works fine.
data = [[1, 2, 3, 4], [2224, 34, 34, 34, 34]]
with open('1.csv', "wb") as f:
writer = csv.writer(f)
writer.writerows(data)