OTXv2.py throws an exception from line 83 (response.read().decode...) if there is no data in the response.
I find that this happens at least once while running the ip reputation generator on reasonably large pulse subscriptions. As the exception is uncaught, the long-running getall_iter() fails and getting an updated reputation.list is very difficult.