python에서 응답합니다.text와 response.콘텐츠의 차이점 상세히 보기

1.response.text


- 유형:str
- 디코딩 유형: 응답에 대한 HTTP 헤더의 인코딩에 근거하여 추정된 텍스트 인코딩
- 인코딩 방식을 수정하는 방법:response.encoding=”gbk”

2. response.content


- 유형: bytes
- 디코딩 유형: 지정되지 않음
- 인코딩 방식을 수정하는 방법:response.content.deocde(“utf-8”)

3. 웹 원본 코드를 가져오는 일반적인 방법:


response.content.decode()
response.content.decode(“GBK”)
디코딩 방식은 응답 헤더에서 Content-Type:text/html를 찾을 수 있습니다.charset=utf-8 또는 웹 원본 코드의 content="text/html;charset=utf-8"로 결정합니다.

response.text
상기 세 가지 방법은 이전에 뒤로 시도하여 모든 웹 디코딩 문제를 100% 해결할 수 있다
그래서 **response를 사용하는 것을 추천합니다.content.deocde()** 방식으로 응답을 받는 html 페이지
추가:python3에서 requests 상용response

코드 보세요~


import requests
res = requests.get("http://127.0.0.1:9092")

print(res.status_code) # 200
print(res.url) # http://127.0.0.1:9092/
print(res.headers) # {'Content-Type': 'application/json; charset=utf-8', 'Content-Length': '10', 'Date': 'Sat, 22 Dec 2018 13:36:16 GMT', 'Connection': 'keep-alive'}
print(res.cookies) # <RequestsCookieJar[<Cookie cid=hello world for 127.0.0.1/>]>
print(res.text) # 8248154254
print(res.content) # b'8248154254'  
print(res.cookies['cid']) # hello world

#    
r1 = requests.get('https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1545496551516&di=8ed19596bc72aa87299ed7f234830128&imgtype=0&src=http%3A%2F%2Fimg5.duitang.com%2Fuploads%2Fitem%2F201107%2F31%2F20110731155631_htMcs.jpg')
b = r1.content
with open('hao.jpg','wb') as f:
    f.write(b)
이상의 개인적인 경험으로 여러분께 참고가 되었으면 좋겠습니다. 또한 많은 응원 부탁드립니다.

좋은 웹페이지 즐겨찾기