网页爬虫 - 如何确定一个python爬取得网页是否是被压缩的?
黄舟
黄舟 2017-04-17 15:37:41
0
1
683

我今天尝试爬去糗事百科的。F12后发现REquest headers中Accept-Encoding:gzip, deflate, sdch 我就以为是被压缩的,后来

response=urllib.request.urlopen(Request
print(response.info().get('Content-Encoding'))

返回的是None,请问到底如何确定否被压缩

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

모든 응답(1)
洪涛

이 헤더가 압축되기 전에 크롤링할 때 Accept-Encoding을 설정해야 합니다.

브라우저에서 Accept-Encoding:gzip, deflate, sdch는 브라우저가 gzip, deflate, sdch의 세 가지 압축 방법을 지원함을 웹사이트에 알려줍니다. 즉, 이는 웹사이트에서 지원하는 압축 방식이 아닌, 브라우저에서 지원하는 압축 방식을 의미합니다.

웹사이트에서는 지원되는 압축 방식 중 하나를 선택하여 반환하며, 압축 방식은 Content-Encoding의 값입니다. 브라우저는 이 값에 따라 해당 압축 해제 방법을 선택합니다.

Yibai는 gzip을 지원하지만 Accept-Encoding을 설정하지 않으면 압축이 발생하지 않습니다.

으아악

위 스크립트의 출력은

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿