Während des Scraping-Prozesses mit scrapy erscheint ein Fehler von Zeit zu Zeit in meinen Logs. Es scheint nirgendwo in meinem Code und sieht aus wie etwas in twisted \ openssl. Irgendwelche Ideen, was das verursacht und wie man es los wird?'NoneType' Objekt hat kein Attribut '_app_data' in scrapy twisted openssl
Stacktrace hier:
[Launcher,27487/stderr] Error during info_callback
Traceback (most recent call last):
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/twisted/protocols/tls.py", line 415, in dataReceived
self._write(bytes)
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/twisted/protocols/tls.py", line 554, in _write
sent = self._tlsConnection.send(toSend)
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/OpenSSL/SSL.py", line 1270, in send
result = _lib.SSL_write(self._ssl, buf, len(buf))
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/OpenSSL/SSL.py", line 926, in wrapper
callback(Connection._reverse_mapping[ssl], where, return_code)
--- <exception caught here> ---
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/twisted/internet/_sslverify.py", line 1055, in infoCallback
return wrapped(connection, where, ret)
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/twisted/internet/_sslverify.py", line 1157, in _identityVerifyingInfoCallback
transport = connection.get_app_data()
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/OpenSSL/SSL.py", line 1589, in get_app_data
return self._app_data
File "/opt/webapps/link_crawler/lib/python2.7/site-packages/OpenSSL/SSL.py", line 1148, in __getattr__
return getattr(self._socket, name)
exceptions.AttributeError: 'NoneType' object has no attribute '_app_data'
Veröffentlichen Sie keinen Teil Ihrer Frage auf einer anderen Website. Fügen Sie den Stack-Trace inline in Ihre Frage ein. –
Ein minimales Beispiel, das das Problem reproduziert, wäre auch nützlich: http://sscce.org/ –
ok, ich aktualisierte die Frage mit StackTrace inline.aber ich habe kein reproduzierbares Beispiel, weil es von Zeit zu Zeit passiert. vielleicht ein paar Mal für 100k Seiten, oder vielleicht noch weniger. Es ist nicht etwas, das einfach reproduziert werden kann, und alle Stack-Traces innerhalb des Codes von Bibliotheken, nicht von Minen-Code, haben also keine Ahnung, wie man ein minimales Beispiel macht. – Aldarund