当前位置: 首页 > wzjs >正文

黑猫会活动策划网站地方招聘网站如何做推广

黑猫会活动策划网站,地方招聘网站如何做推广,wordpress total,免费网站制作公司遵守网站的爬虫规则、避免爬取敏感信息、保护个人隐私! 一、环境配置与基础验证 # 验证 Python 版本(需 ≥3.8) import sys print(sys.version) # 应输出类似 3.8.12 的信息# 安装 requests 库(若未安装) # 命令行执…

遵守网站的爬虫规则、避免爬取敏感信息、保护个人隐私!

一、环境配置与基础验证

# 验证 Python 版本(需 ≥3.8)
import sys
print(sys.version)  # 应输出类似 3.8.12 的信息# 安装 requests 库(若未安装)
# 命令行执行:pip install requests# 基础请求验证
import requests
response = requests.get("https://httpbin.org/get")
print("状态码:", response.status_code)  # 成功返回 200

二、HTTP 请求全流程解析

1. GET 请求原理与实现

# GET 请求参数传递
import requestsparams = {"category": "books", "page": 2}
response = requests.get("https://httpbin.org/get",params=params,headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36","Referer": "https://www.example.com"}
)
print("最终请求 URL:", response.url)  # 显示自动拼接的完整 URL# 响应内容解析
print("响应头:", response.headers)
print("JSON 数据:", response.json()["args"])  # 获取查询参数

原理说明

  • GET 请求将参数附加在 URL 后面,通过 ?key1=value1&key2=value2 形式传递
  • headers 参数用于伪装浏览器,避免被反爬机制拦截

2. POST 请求原理与实现

# 表单数据提交
import requestsform_data = {"username": "test_user", "password": "p@ssw0rd"}
response = requests.post("https://httpbin.org/post",data=form_data,headers={"Content-Type": "application/x-www-form-urlencoded"}
)
print("表单响应:", response.json()["form"])# JSON 数据提交
json_data = {"title": "Python 教程", "views": 1500}
response = requests.post("https://httpbin.org/post",json=json_data,headers={"Content-Type": "application/json"}
)
print("JSON 响应:", response.json()["json"])

原理说明

  • POST 请求通过请求体传递数据,需显式设置 Content-Type
  • json= 参数会自动序列化字典并设置正确头信息

response 的核心属性

# 文本形式
print("文本形式:", response.text)  # 返回文本形式# 解析JSON格式响应
print("JSON格式响应:", response.json())  # 解析JSON格式响应# 状态码(HTTP协议标准代码)
print("状态码:", response.status_code)  # 200表示成功 # 响应头(HTTP头信息)
print("响应头:", response.headers)  # 包含Content-Type、Server等信息  # 编码格式(自动检测或手动设置)
print("编码:", response.encoding)  # 默认为'utf-8',可通过response.encoding = 'gbk'修改 # 原始响应内容(二进制形式)
print("原始内容:", response.content[:100])  # 前100字节  # 请求URL(可能因重定向改变)
print("实际请求URL:", response.url)  # 包含重定向后的最终地址 

三、Cookie 全场景管理

1. 手动设置 Cookie

import requests# 通过字典直接设置
cookies = {"session_id": "a1B2c3D4", "user_token": "x9y8z7"}
response = requests.get("https://httpbin.org/cookies",cookies=cookies
)
print("服务器收到的 Cookie:", response.json()["cookies"])# 使用 RequestsCookieJar 精确控制
from requests.cookies import RequestsCookieJarjar = RequestsCookieJar()
jar.set("tracking", "t1", domain=".example.com", path="/api")
response = requests.get("https://httpbin.org/cookies", cookies=jar)
print("精确控制的 Cookie:", response.json())

关键点

  • domainpath 参数需与目标网站匹配
  • RequestsCookieJar 支持复杂 Cookie 操作(如过期时间设置)

2. 会话级 Cookie 管理

# 使用 Session 对象自动管理
import requestswith requests.Session() as s:# 首次登录设置 Cookielogin_data = {"user": "admin", "pass": "admin123"}s.post("https://httpbin.org/post", data=login_data)# 后续请求自动携带 Cookieresponse = s.get("https://httpbin.org/cookies")print("会话 Cookie:", response.json())

优势

  • 自动复用 TCP 连接,提升请求效率
  • 跨请求保持 Cookies 和 Headers

四、高级特性

1. 智能重试机制

import requests
from requests.adapters import HTTPAdapter
from urllib3.util.retry import Retry# 配置重试策略
retry = Retry(total=3,backoff_factor=0.5,status_forcelist=[500, 502, 503, 504]
)# 创建带重试的会话
session = requests.Session()
session.mount("https://", HTTPAdapter(max_retries=retry))try:response = session.get("https://httpbin.org/delay/5",  # 模拟慢速响应timeout=3  # 超时设置(秒))
except requests.exceptions.Timeout:print("请求超时,已重试 3 次")

参数说明

  • backoff_factor 控制重试间隔时间(如 0.5 秒→1秒→2秒)
  • status_forcelist 指定需要重试的 HTTP 状态码

2. 大文件流式下载

# 下载网络图片(避免内存溢出)
import requestsimage_url = "https://httpbin.org/image/png"
response = requests.get(image_url, stream=True)with open("demo_image.png", "wb") as f:for chunk in response.iter_content(chunk_size=1024):if chunk:f.write(chunk)
print("图片下载完成,文件大小:", len(response.content), "字节")

技术要点

  • stream=True 启用流式传输
  • iter_content() 分块读取响应内容

五、爬虫注意:数据隐私保护

遵守网站的爬虫规则、避免爬取敏感信息、保护个人隐私!

http://www.dtcms.com/wzjs/837427.html

相关文章:

  • 农家乐网站 建设专门做企业名录的网站
  • 浙江省建设诚信系统网站上海人才服务网官网
  • 图片展示网站php源码wordpress插件转php
  • wordpress 3.3.1东莞网络排名优化
  • 如何做网站价格策略wordpress 恶意注册
  • 网站内容设计主要包括wordpress 导入 乱码
  • 洛阳网站建设启辰网络服装网站建设策划书的基本结构
  • 网站死链修复wordpress不能注册
  • 江西网站开发怎么看wordpress数据库位置
  • 免费制作简历模板网站仙桃网站网站建设
  • 江门营销型网站建设公司网站建设策划方案t
  • 如何选择徐州网站开发上海建网站价格
  • 西安电子商务网站开发wordpress 创建数据库表
  • 建网站设计这样做网站推广
  • app取代网站网站 永久关停 请示
  • 平台网站建设多少钱河南城乡建设厅网站证书查询
  • 旅游网站建设流程怎么创建自己的购物平台
  • 石家庄+外贸网站建设公司引流推广犯法吗
  • app设计素材网站国家企业工商网查询
  • 下载的软件乱码怎么解决网站建设优化去哪学
  • 深圳做网站的淄博网站关键字优化
  • 大气蓝色律师网站phpcms模板东莞优化seo网站关键词优化
  • 换网站了吗网站开发寻找潜在客户的途径
  • 商城型网站建设代理加盟建网站做哪方面
  • psd网站wordpress页面woo分类
  • 网站建设合同书保密条款设计好的网站推荐
  • 用htlm做静态网站怎么用网页设计与制作教程 第2版 张兵义
  • 政务公开网站建设工作情况汇报成都网站制作的公司
  • 南京定制网站建设怎么收费域名注册 腾讯云
  • 合肥 企业网站设计公司短视频创作平台