requests不带参数的get请求和带get参数请求
requests库常用的方法
requests.Request(url) 构造一个请求,支持以下各种方式
requests.get() 发送get请求
requests.post() 发送post请求
requests.head() 获取HTML的头部信息
requests.put() 发送put请求
requests.patch() 提交局部修改的请求
requests.delete() 提交删除请求
requests库的使用
语法构造
requests.get(url,params=None)
参数说明
url:需要爬取的网站和网址
params:请求参数
该方法的结果为Response对象,包含服务器的响应信息
response对象的常用属性
response.staue_code 响应状态码
response.content 把response对象转换为二进制
response.text 把response对象转换为字符串数据
response.encoding 定义response对象的编码
response.cookies 获取请求后的cookie
response.url 获取请求网址
response.json() 内置的json解码器
Response.headers 以字典对象存储服务器响应头,字典键不区分大小
发送不带参数的get请求
import requests url = 'https://www.baidu.com/' resp = requests.get(url) #设置响应的经编码格式 resp.encoding='utf-8' cookie = resp.cookies #获取请求后的cookie信息 headers = resp.headers #以字典对象存储服务器响应头,字典键不区分大小 print('响应状态码:',resp.status_code) print('请求后的cookie:',cookie) print('获取请求的网址:',resp.url) print('响应头:',headers) print('响应内容:',resp.text)
带参数的get请求
1.
import requests import urllib.request url = 'https://www.so.com/s' params = {'q':'python'} resp = requests.get(url,params=params) resp.encoding='utf-8' print(resp.text)
2.
# 例 url = 'https://www.so.com/s' # 请求头 headers = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36 QIHU 360SE"} resp = requests.get(url,headers=headers) resp.encoding = 'utf-8' print(resp.text)