urllib2 python (кодирование передачи: фрагментировано)

Я использовал следующий код Python для загрузки html-страницы:

response = urllib2.urlopen(current_URL)
msg = response.read()  
print msg

Для такой страницы, как эта, открывает URL без ошибок, но потом печатает только часть html-страницы!

В следующих строках вы можете найти http-заголовки html-страницы. Я думаю, что проблема связана с «Transfer-Encoding: chunked».

Кажется, urllib2 возвращает только первый фрагмент! У меня есть трудности с чтением оставшихся фрагментов. Как я могу прочитать оставшиеся фрагменты?

Server: nginx/1.0.5
Date: Wed, 27 Feb 2013 14:41:28 GMT
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Set-Cookie: route=c65b16937621878dd49065d7d58047b2; Path=/
Set-Cookie: JSESSIONID=EE18E813EE464664EA64086D5AE9A290.tpdjo13v_3; Path=/
Pragma: No-cache
Cache-Control: no-cache,no-store,max-age=0
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Vary: Accept-Encoding
Content-Language: fr

person user2115924    schedule 27.02.2013    source источник


Ответы (1)


Я обнаружил, что если указан заголовок I Accept-Language, сервер не разрывает TCP-соединение, в противном случае это происходит.

curl -H "Accept-Language:uk,en-US;q=0.8,en;q=0.6,ru;q=0.4" -v 'http://www.legifrance.gouv.fr/affichJuriJudi.do?oldAction=rechJuriJudi&idTexte=JURITEXT000024053954&fastReqId=660326373&fastPos=1'
person webknjaz    schedule 12.08.2013