【发布时间】:2020-06-01 22:09:24
【问题描述】:
我有两个功能:def is_updated_database(): 正在检查数据库是否已更新,另一个def scrape_links(database): 正在通过一组链接(从上述数据库下载)进行抓取。
所以我想要做的是当def is_updated_database(): 发现更新已下载时,我想停止def scrape_links(database): 并使用新的函数参数重新加载它(database 这将是新链接的列表)。
我的尝试:我知道如何运行两个线程,但我不知道如何“连接”它们,这样如果一个线程发生了什么事情,另一个线程也应该发生什么事情。
【问题讨论】:
-
scrape_links()中的每次迭代都应该检查一些“标志”(全局变量、threading.Event、threading.Condition 等),如果设置了标志,则重新启动。数据库更新应该设置这个标志。 -
请贴出两个函数的代码,包括线程部分。
标签: python python-3.x multithreading web-scraping