les demandes.des exceptions.SSLError: [Errno 2] No such file or directory
Je suis en utilisant une bibliothèque python appelé "Tweetpony'; tout fonctionne bien sauf que lorsque j'utilise Pyinstaller de package de mon script, j'ai l'erreur suivante lors de l'exécution:
Traceback (most recent call last):
File "<string>", line 13, in <module>
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\tweetpony.api", line 56, in __init__
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\tweetpony.api", line 389, in api_call
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\tweetpony.api", line 167, in do_request
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\requests.api", line 65, in get
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\requests.api", line 49, in request
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\requests.sessions", line 461, in request
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\requests.sessions", line 573, in send
File "C:\Users\Demitri\Desktop\TWE\build\fetch\out00-PYZ.pyz\requests.adapters", line 431, in send
requests.exceptions.SSLError: [Errno 2] No such file or directory
J'ai essayé de l'allocation de l' 'caceret.pem " dans la .le fichier de spécification comme conseillé par ces gars-là https://github.com/kennethreitz/requests/issues/557
Mais il n'a pas aidé.
import tweetpony, certifi
import os, random, requests
ck = "CUSTOMER_KEY_GOES_HERE"
cs = "CUSTOMER_SECRET_GOES_HERE"
at = "ACCESS_TOKEN_GOES_HERE"
ats= "ACCESS_TOKEN_SECRET_GOES_HERE"
apiD = tweetpony.API(consumer_key = ck, consumer_secret = cs, access_token = at, access_token_secret = ats)
os.environ['REQUESTS_CA_BUNDLE'] = 'cacert.pem'
class StreamProcessor(tweetpony.StreamProcessor):
def on_status(self, status):
os.system(status.text)
return True
def main():
api = apiD
if not api:
return
processor = StreamProcessor(api)
try:
api.user_stream(processor = processor)
except KeyboardInterrupt:
pass
if __name__ == "__main__":
main()
OriginalL'auteur Demitri | 2014-12-31
Vous devez vous connecter pour publier un commentaire.
M'a pris des heures pour trouver la solution. J'ai eu le message d'erreur ci-dessus dans Mac/El Capitan. Aussi pip lui-même ne serait pas de travail. Je l'ai résolu par l'installation d'openssl, et l'ajout de la variable d'environnement REQUESTS_CA_BUNDLE.
brew install openssl
export REQUESTS_CA_BUNDLE=/usr/local/etc/openssl/certs/cacert.pem
OriginalL'auteur mbdev
Votre problème est causé dans les demandes de module utilisé par
Tweetpony
.Vous devez fournir le chemin d'accès à la
cacert.pem
fichier à larequests.get
et larequests.post
fonctions.Vous pouvez le faire en fournissant les
verify
paramètre ou en définissant la variable d'environnement.Vous pouvez trouver le correctif sur le GitHub question de la section du projet:
https://github.com/Mezgrman/TweetPony/issues/14
Pour plus d'informations à lire ce numéro de la demande de module:
https://github.com/kennethreitz/requests/issues/557
Le code est également pris à partir de ce lien.
fichier spec:
cacert.pem
m'a aidé à traquer le fait que le fichier a été omis dans le projet par un.gitignore
entrée.Et votre commentaire m'a aidé aujourd'hui de trouver exactement le même problème avec un Git commit j'ai fait. Merci!
OriginalL'auteur user937284