Buduję aplikację w pythonie 3.3, która korzysta z biblioteki żądań. Kiedy próbuję uzyskać adres URL z połączeniem SSL, chcę go zweryfikować za pomocą opcji verify = true. Działa to doskonale podczas uruchamiania moich skryptów Pythona.Biblioteka żądań: brakujący plik po cx_freeze
Po zatrzymaniu tych samych skryptów ulega awarii. Tęskni za czymś i naprawdę nie mogę wymyślić, jak zintegrować go w mojej zamrożonej aplikacji.
pojawia się następujący błąd (który wyzwala również inne błędy, ale nie umieszczać je tutaj):
Traceback (most recent call last):
File "C:\Python33-32\lib\site-packages\requests\packages\urllib3\connectionpool.py", line 422, in urlopen
body=body, headers=headers)
File "C:\Python33-32\lib\site-packages\requests\packages\urllib3\connectionpool.py", line 274, in _make_request
conn.request(method, url, **httplib_request_kw)
File "C:\Python33-32\lib\http\client.py", line 1049, in request
self._send_request(method, url, body, headers)
File "C:\Python33-32\lib\http\client.py", line 1087, in _send_request
self.endheaders(body)
File "C:\Python33-32\lib\http\client.py", line 1045, in endheaders
self._send_output(message_body)
File "C:\Python33-32\lib\http\client.py", line 890, in _send_output
self.send(msg)
File "C:\Python33-32\lib\http\client.py", line 828, in send
self.connect()
File "C:\Python33-32\lib\site-packages\requests\packages\urllib3\connectionpool.py", line 105, in connect
ssl_version=self.ssl_version)
File "C:\Python33-32\lib\site-packages\requests\packages\urllib3\util.py", line 281, in ssl_wrap_socket
context.load_verify_locations(ca_certs)
FileNotFoundError: [Errno 2] No such file or directory
Wydaje się, że ca_certs brakuje. W bibliotece żądań znajduje się plik o nazwie cacert.pem, ale nie wiem, czy jest to brakujący plik i jak go zaimportować, ponieważ wydaje się, że nie jest on zintegrowany z moim zamrożonym pakietem.
Moduły wymagające oddzielnych plików (takich jak plik klucza) mają problemy z zamrożeniem. Może zajść potrzeba edycji kodu żądania. –
Oczywiście istnieje możliwość, że będzie działać, ale byłoby ładniej, gdyby plik został zaimportowany do paczki z folderu modułu. Czy możliwe jest również wymuszenie importu tego konkretnego pliku podczas procesu zamrażania? W procesie instalacji dostępne są funkcje importowania, ale nie wiem, jak z nich korzystać, ponieważ oficjalna dokumentacja nie jest do końca jasna. – Ecno92