Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I make calls to AWS with Python 3 and httplib2 on Windows 7?

I am using httplib2 to make calls to Amazon Web Services (AWS):

http = httplib2.Http(cache='.cache')
response, content = http.request('https://sdb.amazonaws.com/...')

However it fails looking for CAs (I think):

File "C:\Python32\lib\site-packages\httplib2\__init__.py", line 1059, in request self.disable_ssl_certificate_validation)
File "C:\Python32\lib\site-packages\httplib2\__init__.py", line 772, in __init__ context.load_verify_locations(ca_certs)
IOError: [Errno 2] No such file or directory

My questions:

  1. Is there something I need to do to configure my OS and environment for this to work?
  2. I've seen a lot of posts about making sure the sockets library is built for SSL in Python 2; does that apply to Python 3?

Thanks!

like image 332
Seth Avatar asked Aug 12 '11 17:08

Seth


1 Answers

The httplib2 /Python3 folder is missing cacerts.txt, so it doesn't get copied to the Python /lib folder. I copied the file there manually and everything worked. This is a known issue with httplib2.

like image 66
Seth Avatar answered Oct 11 '22 07:10

Seth