hi,
i found some problems trying to connect into https.
>>> from ttrss.client import TTRClient
>>> tt = TTRClient("https://server.org/tt-rss","user", "pass")
>>> tt.login()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/ttrss/client.py", line 50, in login
'password': self.password
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/ttrss/client.py", line 75, in _get_json
r = self._session.post(self.url, data=json.dumps(data))
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/requests/sessions.py", line 498, in post
return self.request('POST', url, data=data, **kwargs)
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/requests/sessions.py", line 456, in request
resp = self.send(prep, **send_kwargs)
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/requests/sessions.py", line 559, in send
r = adapter.send(request, **kwargs)
File "/Users/gonzo/Documents/dev/rss_parse/lib/python2.7/site-packages/requests/adapters.py", line 382, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [Errno 1] _ssl.c:507: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
after some googling i find out that requests is validating SSL certificates. I'm using a self-signed certificate and some how requests is not using keychain(i'm using osx).
the workaround i found so far it is to disable the cerficate verification
>>> from ttrss.client import TTRClient
>>> tt = TTRClient("https://server.org/tt-rss","user", "pass")
>>> tt.__dict__['_session'].verify
True
>>> tt.__dict__['_session'].verify=False # don't verify certificates
>>> tt.__dict__['_session'].verify
False
>>> tt.login()
>>> a=tt.get_categories()
>>> pprint(a)
[<ttrss.client.Category object at 0x100f72dd0>,
<ttrss.client.Category object at 0x100f72f90>,
<ttrss.client.Category object at 0x100f72cd0>,
<ttrss.client.Category object at 0x100f72b90>,
<ttrss.client.Category object at 0x100f72f10>,
<ttrss.client.Category object at 0x100f727d0>,
<ttrss.client.Category object at 0x100f72750>,
<ttrss.client.Category object at 0x100f72fd0>,
<ttrss.client.Category object at 0x100f72f50>,
<ttrss.client.Category object at 0x100f72ed0>,
<ttrss.client.Category object at 0x100f78110>,
<ttrss.client.Category object at 0x100f78150>]
another option is to set enviroment variable REQUESTS_CA_BUNDLE pointing to certificate path. i have not tried it yet.
reference:
http://docs.python-requests.org/en/late ... rificationhope it helps