使用requests库实现http请求

1.发送请求

import requests

url = 'http://www.tipdm.com/tipdm/index.html'

rqq = requests.get(url)

In [ ]:

print('响应码:', rqq.status_code)
print('编码:', rqq.encoding)
print('请求头:', rqq.headers)
# print('实体:', rqq.text)
print('实体:', rqq.content)

In [ ]:

print('实体:', rqq.text[:40])
print('实体:', rqq.content[:40])

2.设置编码

In [ ]:

import requests

url = 'http://www.tipdm.com/tipdm/index.html'

rqq = requests.get(url)
rqq.encoding = 'utf-8'
print('实体:', rqq.text)

In [ ]:

print('实体:', rqq.content.decode('utf-8'))

3.自适应编码设置

In [ ]:

import chardet
#chardet库使用detect方法检测给定字符串的编码
chardet.detect(rqq.content)

4.防止连接不稳定

In [ ]:

import requests

url = 'http://www.tipdm.com/tipdm/index.html'
head = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'}

'''
为避免因等待服务器响应造成程序永久失去响应,通常需要给程序设置一个时间作为
限制,超过该时间后程序将会自动停止等待。在requests库中通过设置timeout
这个参数实现,超过该参数设定的秒数后,程序会停止等待
'''
rqq = requests.get(url, headers=head, timeout=2.)
rqq.headers

5.完整实例

In [ ]:

import requests
import chardet
url = 'http://www.tipdm.com/tipdm/index.html'
head = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'}
rqq = requests.get(url, headers=head, timeout=2.0)
# rqq.encoding = 'utf-8'
rqq.encoding = chardet.detect(rqq.content)['encoding']
rqq.text

6.参考文章

【创作不易,望点赞收藏,若有疑问,请留言,谢谢】

posted @ 2022-07-01 15:27  东血  阅读(199)  评论(0编辑  收藏  举报

载入天数...载入时分秒...