requests--爬取网页内容
requests简介相比urllib和urllib3更好的方案是使用requests。它是一个Python第三方库处理URL资源特别方便。Keep-Alive 连接池国际化域名和 URL带持久 Cookie 的会话浏览器式的 SSL 认证自动内容解码基本/摘要式的身份认证优雅的 key/value Cookie自动解压Unicode 响应体HTTP(S) 代理支持文件分块上传流下载连接超时分块请求支持 .netrcrequests库常用模块模块名称描述requests.Request表示请求对象用于准备一个请求发送到服务器。requests.Response表示响应对象其中包含服务器对HTTP请求的响应。requests.Session表示请求会话提供Cookie持久性、连接池和配置。Request类的对象表示一个请求它的生命周期针对一个客户端请求一旦请求发送完毕该请求包含的内容就会被释放掉。Session类的对象可以跨越多个页面它的生命周期同样针对的是一个客户端。requests库初体验urllib发送get请求# 导入请求和解析模块 import urllib.request import urllib.parse # 请求的URL路径和查询参数 url http://www.baidu.com/s word {wd:Python网络爬虫} # 转换成url编码格式字符串 word urllib.parse.urlencode(word) # 拼接完整的URL路径 new_url url ? word # 请求报头 headers { User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36} # 根据URL和headers构建请求 request urllib.request.Request(new_url, headers headers) # 发送请求并接收服务器返回的文件对象 response urllib.request.urlopen(request) # 使用read方法读取获取到的网页内容使用UTF-8格式进行解码 html response.read().decode(UTF-8) print(html)requests发送get请求# 导入requests库 import requests # 请求的URL路径和查询参数 url http://www.baidu.com/s param {wd: Python网络爬虫} # 请求报头 headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36 } # 发送GET请求返回一个响应对象 response requests.get(url, paramsparam, headersheaders) # 查看响应的内容 print(response.text)便捷之处无须再转换为URL路径编码格式拼接完整的URL路径。无须再频繁地为中文转换编码格式。从发送请求的函数名称可以很直观地判断发送到服务器的方式。发送HTTP请求的函数函数功能说明requests.request()构造一个请求支撑以下各方法的基础方法requests.get()获取HTML网页的主要方法对应于HTTP的GET请求方式requests.head()获取HTML网页头信息的方法对应于HTTP的HEAD请求方式requests.post()向HTML网页提交POST请求的方法对应于HTTP的POST请求方式requests.put()向HTML网页提交PUT请求的方法对应于HTTP的PUT请求方式requests.patch()向HTML网页提交局部修改请求对应于HTTP的PATCH请求方式requests.delete()向HTML网页提交删除请求对应于HTTP的DELETE请求方式这些函数都会做两件事情1、构建一个Request类的对象该对象将被发送到某个服务器上请求或者查询一些资源2、一旦得到服务器返回的响应就产生一个Response对象该对象包含了服务器返回的所有信息也包括原来创建的Request对象。requests的response响应Response类用于动态地响应客户端的请求控制发送给用户的信息并且将动态地生成响应包括状态码、网页的内容等。属性说明status_codeHTTP请求的返回状态200表示连接成功404表示失败textHTTP响应内容的字符串形式即URL对应的页面内容encoding从HTTP请求头中猜测的响应内容编码方式apparent_encoding从内容中分析出的响应编码的方式备选编码方式contentHTTP响应内容的二进制形式当请求发出之后Requests库可以找出它使用了什么编码并且可以设置encoding 属性进行改变。 response.encoding utf-8 response.encoding ISO-8859-1再次调用text属性获取返回的文本内容时将会使用上述设置的新的编码方式。案例--搜索豆瓣电影# 导入requests库 import requests # 请求的URL路径和查询参数 #https://search.douban.com/movie/subject_search?search_textpythoncat1002start30 page 3 url https://search.douban.com/movie/subject_search param {search_text: Python,start:15*(page-1),cat:1002} # 请求报头 headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36 } # 发送GET请求返回一个响应对象 response requests.get(url, paramsparam, headersheaders) # 查看响应的内容 print(response.text) with open(douban.html, w, encodingutf-8) as f: f.write(response.text)

相关新闻

技术博文创作须知:仅有标题难以落地,需补全项目与部署细节

技术博文创作须知:仅有标题难以落地,需补全项目与部署细节

这个标题并不能支撑一篇 CSDN 技术博文。它看起来更像音乐或视频合集名称,不涉及本地部署、模型、工具、接口等可落地技术主题;而且项目正文、关键词、摘要均为空,我没有足够事实依据来编写一篇符合规范、不编造参数的技术文章。如果确实准备…

2026/10/24 12:56:06 阅读更多 →
《为了N》安希CP为何好磕?因为爱是克制与守护

《为了N》安希CP为何好磕?因为爱是克制与守护

不知道你有没有过这种经历:明明已经很久没追一部剧了,却总在某个深夜刷到角色名时,心里还是忍不住“咯噔”一下。对我来说,这个触发词是“安希”,是《为了N》,是那段哪怕过了很多年重看,依然会让…

2026/10/25 2:17:48 阅读更多 →
GEO优化服务商哪家靠谱:行业痛点分析与针对性解决方案

GEO优化服务商哪家靠谱:行业痛点分析与针对性解决方案

企业在推进GEO优化的过程中,究竟面临哪些最大挑战?这个问题几乎困扰着每一家正在或准备拥抱AI搜索时代的企业。随着豆包、Kimi、ChatGPT等AI平台成为用户获取信息的主要入口,品牌能否被AI准确引用、稳定推荐,直接决定了其在新一代…

2026/10/25 11:08:36 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/28 23:48:14 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/28 7:28:00 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/28 9:02:11 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/28 22:10:30 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/28 9:00:54 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/28 7:29:02 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 16:58:40 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 9:01:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 19:25:09 阅读更多 →