I've got to apologize and correct some misinformation from my previous post. I had given up on SUDS and tried to switch to a different library. I didn't have much luck with that either. I decided that since I had the source code, I'd try to trace down the "timeout bug" myself. It turns out I owe the creators an apology. First, the timeout value should work on any of the supported versions of Python, not just 2.6 and above. In stepping through the code I found a section that checks for the python version number and then either uses the urllib2 timeout value or sets the socket default timeout.
I found the real problem. In stepping through the code I got a different error message saying the the M7BROKER timed out after 180 seconds. I Googled that and the only references are to either MS Query or JDBC. In other words the "bug" is on the server side. I should have figured that out earlier since the server program is also new. I don't have access to it at all but it was replacing a SAP program that would download the data. That SAP program didn't have a timeout problem so I assumed that the web service wouldn't either.
If I had seen that error message I would have probably figured out the problem a lot sooner. I don't know if it was buried in the log and I just didn't see it or if SUDS translated it into a generic timeout message. I tried running it again to see but they fixed the problem on the server so I'm not getting the timeout message anymore.
Anyway, thanks to the SUDS creators and maintainers. Sorry for wasting anyone's time.
Joe Goldthwaite.