目前,我有一个可以从中获取内容的 url 列表,并且正在连续进行。我想将其更改为并行抓取它们。这是一个伪代码。我想问一下是设计声音吗?我知道 .start() 启动线程,但是,我的数据库没有更新。我需要使用 q.get() 吗?谢谢
import threading
import Queue
q = Queue.Queue()
def do_database(url):
""" grab url then input to database """
webdata = grab_url(url)
try:
insert_data_into_database(webdata)
except:
....
else:
< do I need to do anything with the queue after each db operation is done?>
def put_queue(q, url ):
q.put( do_database(url) )
for myfiles in currentdir:
url = myfiles + some_other_string
t=threading.Thread(target=put_queue,args=(q,url))
t.daemon=True
t.start()