赞
踩
我用多线程爬取一个论坛的页面,第十个页面爬取出错,但是为什么对应的线程没有执行except 后面的print('error'),而是忽略掉了错误,继续执行后面的代码?
class myThread (threading.Thread):
def __init__(self, threadID, name, url):
threading.Thread.__init__(self)
self.threadID = threadID
self.name = name
self.url = url
def run(self):
print('%s线程启动' %self.name)
content = '*************************************************\n正在爬取{}'.format(self.url)
try:
for card in get_card_url(self.url):
# print(card)
content = content + one_card(card)
except :
print('error')
threadLock.acquire()
print(content)
# 释放锁
threadLock.release()
print('%s线程退出' %self.name)
所以我就是想问: 如果多线程中,某一个线程执行出错,程序会抛出错误么?还是直接忽略继续向下执行
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。