Ich habe plötzlich einen Fehler in einem Skript, das ich verwendet habe, und es ergibt keinen Sinn. Ich bekomme es, wenn ich eine Funktion aus einem Paket rufe, das ich geschrieben habe (es sagt, es ist ein rekursiver Fehler), aber ich kann die gleiche Funktion mit den gleichen Argumenten im Paket main selbst in Ordnung. Es sind keine Schleifen beteiligt, und es gibt keine Rekursion.Plötzlicher rekursiver Fehler in nicht rekursivem Skript
Ich bekomme jetzt den Fehler auch mit anderen Paketen.
import play_scraper
print(play_scraper.details("com.whatsapp"))
Dies ergibt:
Traceback (most recent call last):
File "C:/Users/wd/OneDrive - UGent/Python/test/test.py", line 3, in <module>
print(play_scraper.details("com.whatsapp"))
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\play_scraper\api.py", line 22, in details
return s.details(app_id)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\play_scraper\scraper.py", line 292, in details
response = send_request('GET', url)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\play_scraper\utils.py", line 120, in send_request
verify=verify)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\requests\api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\requests\sessions.py", line 502, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\requests\sessions.py", line 612, in send
r = adapter.send(request, **kwargs)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\requests\adapters.py", line 440, in send
timeout=timeout
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\urllib3\connectionpool.py", line 600, in urlopen
chunked=chunked)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\urllib3\connectionpool.py", line 345, in _make_request
self._validate_conn(conn)
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\urllib3\connectionpool.py", line 844, in _validate_conn
conn.connect()
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\urllib3\connection.py", line 314, in connect
cert_reqs=resolve_cert_reqs(self.cert_reqs),
File "C:\Users\wd\AppData\Roaming\Python\Python36\site-packages\urllib3\util\ssl_.py", line 265, in create_urllib3_context
context.options |= options
File "C:\Python36-32\lib\ssl.py", line 459, in options
super(SSLContext, SSLContext).options.__set__(self, value)
File "C:\Python36-32\lib\ssl.py", line 459, in options
super(SSLContext, SSLContext).options.__set__(self, value)
File "C:\Python36-32\lib\ssl.py", line 459, in options
super(SSLContext, SSLContext).options.__set__(self, value)
[Previous line repeated 323 more times]
RecursionError: maximum recursion depth exceeded while calling a Python object
Offensichtlich tritt jede Art von Rekursion nicht in meinem zweizeilige Skript. Meine beste Vermutung: Ich habe während der Installation eines nicht identifizierten Pakets in meinem 3.6.1-Interpreter etwas geändert, da ich diesen Fehler in 3.5 nicht erhalte. Könnte eine der play_scraper Anforderungen, die ich installiert habe, die
sindbeautifulsoup4 (>=4.4.1)
grequests (>=0.3.0)
lxml (>=3.6.0)
requests (>=2.9.1)
Dies ist alles ziemlich Vermutungen obwohl. Jeder hat eine Ahnung was los ist?