2017-01-08 5 views
0

Я видел эту ошибку на форуме и читал ответы, но я до сих пор не понимаю, что это такое и как его решить. Я очищаю данные из Интернета с 16-килобайтных ссылок, мой скрипт сбрасывает аналогичную информацию из каждой ссылки и записывает ее в .csv. Некоторая дата записывается перед этой ошибкой.Python http.client.Incomplete Read (0 bytes read) error

Traceback (most recent call last): 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 541, in _get_chunk_left 
    chunk_left = self._read_next_chunk_size() 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 508, in _read_next_chunk_size 
    return int(line, 16) 
ValueError: invalid literal for int() with base 16: b'' 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 558, in _readall_chunked 
    chunk_left = self._get_chunk_left() 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 543, in _get_chunk_left 
    raise IncompleteRead(b'') 
http.client.IncompleteRead: IncompleteRead(0 bytes read) 

During handling of the above exception, another exception occurred: 

Traceback (most recent call last): 
File "MoviesToDb.py", line 91, in <module> 
html = r.read() 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 455, in read 
    return self._readall_chunked() 
File "/usr/local/Cellar/python3/3.5.2_3/Frameworks/Python.framework/Versions/3.5/lib/python3.5/http/client.py", line 565, in _readall_chunked 
    raise IncompleteRead(b''.join(value)) 
http.client.IncompleteRead: IncompleteRead(17891 bytes read) 

Я хотел бы знать:
1) Что означает эта ошибка?
2) Как я могу предотвратить это?

ответ

-1

попытка импорта:

from http.client import IncompleteRead 

и добавить в свой сценарий:

except IncompleteRead: 
    # Oh well, reconnect and keep trucking 
     continue 
+0

Он не заслуживает -2. Его решение действительно работает. –