Reputation: 12628
I have a python selenium script that runs through a loop like this...
for i, refcode in enumerate(refcode_list):
try:
source_checkrefcode()
except TimeoutException:
pass
csvWriter.writerow([refcode, 'error', timestamp])
If there is a problem during the source_checkrefcode then the script crashes with an error.
How can I add error handling to this loop so that it just moves to the next item instead of crashing?
Upvotes: 2
Views: 11189
Reputation: 517
I agree with Hassan's Answer. But if you use continue then you won't process any other block of code.
for i, refcode in enumerate(refcode_list):
try:
source_checkrefcode()
except Exception as e:
if 'particular message' in str(e):
# Do the following
# if you don't want to stop for loop then just continue
continue
# another code of block will skip. Use pass or continue as per your requirement.
You must understand the difference between pass and continue Link
Upvotes: 0
Reputation: 1402
You can add a check over exception message, below is the sample code for your understanding.
for i, refcode in enumerate(refcode_list):
try:
source_checkrefcode()
except Exception as e:
if 'particular message' in str(e):
# Do the following
# if you don't want to stop for loop then just continue
continue
Upvotes: 10