Python实战一:获取某云app登录cookie

今天下午抽时间了解了python爬虫,简单认识了request库

需求:

因为天天需要登录某云app,帮别人签到,所以想写个python脚本来帮忙。

了解request库

request库是一个用于发送HTTP请求的库,可以用于向服务器发送GET、POST、PUT、DELETE等请求,并接收服务器返回的响应。

request库的基本用法如下:

  1. 安装request库:在命令行中执行pip install requests命令即可安装。

  2. 导入request库:在Python脚本中使用import requests语句将request库导入到当前脚本中。

  3. 发送GET请求:使用requests.get(url)函数发送GET请求,其中url为要访问的URL地址。例如:

python 复制代码
import requests

# 发送GET请求
response = requests.get('https://www.example.com')
  1. 发送POST请求:使用requests.post(url, data)函数发送POST请求,其中url为要访问的URL地址,data为POST请求的参数。例如:
python 复制代码
import requests

# 发送POST请求
data = {'username': 'admin', 'password': '123456'}
response = requests.post('https://www.example.com/login', data=data)
  1. 获取响应内容:使用response.text属性可以获取响应的内容,使用response.json()方法可以将响应内容解析为JSON格式的数据。例如:
python 复制代码
import requests

# 发送GET请求并获取响应内容
response = requests.get('https://www.example.com')
content = response.text
json_data = response.json()
  1. 处理错误和异常:当访问URL出现错误时,可以使用response.status_code属性获取错误码,使用response.raise_for_status()方法抛出异常。例如:
python 复制代码
import requests

# 发送GET请求并检查错误
response = requests.get('https://www.example.com')
if response.status_code == 200:
    # 请求成功,处理响应内容
    content = response.text
else:
    # 请求失败,抛出异常
    response.raise_for_status()

这只是request库的基本用法,还有许多高级功能和选项可以用来处理不同的HTTP请求和响应。详细的文档可以参考官方网站:https://requests.readthedocs.io/

代码实现:

java 复制代码
import requests

# 构建请求头部信息
headers = {
    "Host": "api.xixunyun.com",
    "content-type": "application/x-www-form-urlencoded",
    "accept-encoding": "gzip",
    "user-agent": "okhttp/3.8.1"
}

# 构建请求参数
data = {
    "app_version": "4.9.6",
    "registration_id": "",
    "uuid": "自己的",
    "request_source": "3",
    "platform": "2",
    "mac": "",
    "password": "自己的",
    "system": "13",
    "school_id": "184",
    "model": "自己的",
    "app_id": "cn.vanber.xixunyun.saas",
    "account": "自己的账号",
    "key": ""
}

# 构建请求URL
url = "https://api.xixunyun.com/login/api?from=app&version=4.9.6&platform=android&entrance_year=0&graduate_year=0&school_id=自己的学校名 h2"

# 发起POST请求
response = requests.post(url, headers=headers, data=data)

# 打印响应内容
print(response.text)
相关推荐
DogDaoDao5 分钟前
【第 05 篇】Python的字典与集合
开发语言·python·集合·字典
兰令水19 分钟前
leecodecode【单调栈】【2026.6.12打卡-java版本】
java·开发语言·算法
涛声依旧-底层原理研究所21 分钟前
混合检索 + 重排:让 AI Agent 拥有「既全又准」的认知骨架
人工智能·python
leagsoft_100321 分钟前
零信任选型五刀法——零信任怎么选?五个问题,五条红线
开发语言·php
努力写A题的小菜鸡24 分钟前
01-PyTorch加载数据初认识(dataset运用)
人工智能·pytorch·python
abcy07121326 分钟前
python fastapi celery hdfs 异步上传
python·hdfs·fastapi
Dxy123931021628 分钟前
Python多线程如何操作全局变量:从踩坑到最佳实践
python
AI人工智能+电脑小能手32 分钟前
【大白话说Java面试题 第112题】【并发篇】第12题:AQS 中节点的入队时机有哪些?
java·开发语言·面试
SilentSamsara33 分钟前
RAG 系统入门:LangChain/LlamaIndex + Chroma 向量数据库的检索增强实战
数据库·人工智能·python·青少年编程·langchain
IT WorryFree34 分钟前
Zabbix 7.4 API 可同步全量参数清单(同步第三方系统专用)
java·开发语言·zabbix