requests模块 - get 请求

1、Requests 请求常用

  • url:请求的 url 地址,接口文档标注的接口请求地址。
  • params:请求数据中的链接,常见的一个 get 请求,请求参数都是在 url 地址中。
  • data:请求数据,参数表单的数据格式。
  • json:接口常见的数据请求格式。
  • headers:请求头信息,http 请求中,比如说编码方式等内容添加。
  • cookie:保存的用户登录信息,比如做一些充值功能,但是需要用户已经登录,需要 cookie 信息的请求信息传输。

2、Requests 响应内容

  • r.encoding:获取当前编码。
  • r.encoding = 'utf-8':设置编码
  • r.text:以 encoding 解析返回内容。字符串方式的响应体会自动根据响应头部的字符编码进行解码。
  • r.cookies:返回 cookie。
  • r.headers:以字典对象存储服务器响应头,但是这个字典键名不区分大小写,若键不存在则返回 None。
  • r.json():requests 中内置的 json 解码器,以 json 形式返回。如果返回的内容不是 json 格式的,则解析时会出错。
  • r.content:以字节形式返回。字节形式的响应体,会自动解码 gzip 和 deflate 压缩。

3、平民写法

import requests

url = 'https://www.baidu.com/s?ie=utf-8&mod=11&isbd=1&isid=ce9a8ff100aa1843&ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=hai&fenlei=256&oq=%25E5%25A4%25A9%25E6%25B6%25AF&rsv_pq=ce9a8ff100aa1843&rsv_t=66a6aZDMvWijVeIOfUCn4ILD2Dik38YoYEkf9D32fcnxNGd03Sm3S%2FMQ6g0&rqlang=cn&rsv_dl=tb&rsv_enter=0&rsv_btype=t&inputT=1805&rsv_sug3=11&rsv_sug1=6&rsv_sug7=100&bs=%E5%A4%A9%E6%B6%AF&rsv_sid=undefined&_ss=1&clist=&hsug=&csor=3&pstg=5&_cr1=32279'
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36'
}
response = requests.get(url, headers=headers)
response.encoding = 'utf-8'
html = response.text
print(html)

4、官方写法

爬虫工具库网址:https://spidertools.cn/

import requests

headers = {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
    "Accept-Language": "zh-CN,zh;q=0.9",
    "Cache-Control": "max-age=0",
    "Connection": "keep-alive",
    "^Cookie": "BIDUPSID=B20BBF8CADED8C221BE05F1B77C71B33; PSTM=1728719840; BD_UPN=12314753; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BAIDUID=9422DA48AB773E237B906EF401BFC7FF:FG=1; H_PS_PSSID=60852_60619_60886_60875; BA_HECTOR=20a4202h2h8521212la5al2k852kc21jgmord1v; ZFY=y50eczm7S7EFalWbi2zKgGf8i8TJuBn:BzIMShfp6Wjs:C; BAIDUID_BFESS=9422DA48AB773E237B906EF401BFC7FF:FG=1; BD_CK_SAM=1; PSINO=3; delPer=0; baikeVisitId=7e84bf38-2e4e-4576-b20e-b917bb51e415; H_PS_645EC=7c8aGMvh6efFakEHuySOVhWopWm^%^2FKTAGqq2gfn6eGN^%^2FjV8dKUSTY2R34JNk; BDSVRTM=227; COOKIE_SESSION=16869_0_4_2_1_4_1_0_4_3_1_0_0_0_0_0_1728781267_0_1728800566^%^7C5^%^230_0_1728800566^%^7C1^",
    "Sec-Fetch-Dest": "document",
    "Sec-Fetch-Mode": "navigate",
    "Sec-Fetch-Site": "same-origin",
    "Sec-Fetch-User": "?1",
    "Upgrade-Insecure-Requests": "1",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36",
    "^sec-ch-ua": "^\\^Google",
    "sec-ch-ua-mobile": "?0",
    "^sec-ch-ua-platform": "^\\^Windows^^^"
}
url = "https://www.baidu.com/"
params = {
    "ie": "utf-8",
    "f": "8",
    "rsv_bp": "1",
    "rsv_idx": "1",
    "tn": "baidu",
    "wd": "^%^E6^%^B5^%^B7^%^E8^%^B4^%^BC^%^E7^%^8E^%^8B",
    "fenlei": "256",
    "oq": "^%^25E6^%^25B5^%^25B7^%^25E8^%^25B4^%^25BC^%^25E7^%^258E^%^258B",
    "rsv_pq": "fb5d927b002d11d5",
    "rsv_t": "f64fMZ1xboMNI^%^2FvhKFlFZQPNDfM7tmq9MyPpsh3rSE8bsV2DByLxJc1^%^2BAHQ",
    "rqlang": "cn",
    "rsv_dl": "tb",
    "rsv_enter": "0",
    "rsv_btype": "t",
    "rsv_sug": "1^"
}
response = requests.get(url, headers=headers, params=params)

print(response.text)
print(response)
posted @   今天的雪有点大  阅读(112)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示