python - 请求.exceptions.SSLError : [Errno 2] No such file or directory

标签 python pyinstaller

我正在使用一个名为“Tweetpony”的 Python 库;一切正常,除了当我使用 Pyinstaller 打包我的脚本时,我在执行时收到以下错误:

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

我已经尝试按照这些人的建议在 .spec 文件中分配“caceret.pem”https://github.com/kennethreitz/requests/issues/557 但这没有帮助。

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()

最佳答案

我花了几个小时才找到解决方案。我在 Mac/El Capitan 中收到上述错误消息。 pip 本身也不起作用。我通过安装 openssl 并添加环境变量 REQUESTS_CA_BUNDLE 解决了这个问题。

酿造安装openssl 导出 REQUESTS_CA_BUNDLE=/usr/local/etc/openssl/certs/cacert.pem

关于python - 请求.exceptions.SSLError : [Errno 2] No such file or directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27726815/

相关文章:

javascript - Python POST 请求相同的 JS/PHP

python - datetime.time 的总和列表

python - 在 PyInstaller 中使用 --onefile 和 .spec

python - 我有 python 脚本,其中包含 os.system() 中的一些 bash 命令。这在 Windows 中有效吗?

python - pyinstaller创建的exe文件,运行时找不到自定义模块

python - 从文本文件创建简单元组

python - Django:使用用户作为外键保存表单

python - 如何调试它从 Windows 库 ucrtbase 抛出的访问冲突?

python - 如何使用我在代码中使用的所有包将 myfile.py 编译为 myfile.exe?

python-3.x - 无法对未注册的加载程序类型执行此操作