[Web自动化] 爬虫之网络请求

9.4 爬虫之网络请求

9.4.1 使用requests库发送HTTP请求

requests库提供了丰富的功能来发送HTTP请求,并处理响应。以下是一些额外的示例和说明。
发送带参数的GET请求
如果你需要向服务器发送查询参数,可以将它们作为字典传递给params参数。

importrequests params={'key1':'value1','key2':'value2'}response=requests.get('http://httpbin.org/get',params=params)print(response.url)# 输出将包含查询参数:http://httpbin.org/get?key1=value1&key2=value2

发送POST请求
POST请求通常用于向服务器提交数据。你可以将数据作为字典传递给data参数(对于表单数据)或作为字节串传递给json参数(对于JSON数据)。

importrequests# 发送表单数据data={'key':'value'}response=requests.post('http://httpbin.org/post',data=data)# 发送JSON数据json_data={'key':'value'}response=requests.post('http://httpbin.org/post',json=json_data)

设置请求头
你可以通过headers参数自定义请求头,这对于模拟不同的浏览器或绕过某些服务器的检查非常有用。

importrequests url='http://example.com'headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3','Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-Language':'en-US,en;q=0.5','DNT':'1',# Do Not Track header'Connection':'keep-alive'}response=requests.get(url,headers=headers)

处理响应
一旦你发送了请求,requests库将返回一个Response对象。你可以使用这个对象来访问响应的内容、状态码、头部等信息。

response=requests.get(url)# 访问响应内容print(response.text)# 文本内容print(response.content)# 原始内容(字节串)# 访问状态码print(response.status_code)# 访问响应头print(response.headers)# 检查请求是否成功ifresponse.status_code==200:print("请求成功!")else:print("请求失败,状态码:",response.status_code)

会话(Session)对象
如果你需要向同一个服务器发送多个请求,并且希望保持某些参数(如Cookies)在请求之间持久化,可以使用requests.Session()对象。

importrequests Session=requests.Session()# 发送第一个请求,设置Cookiesresponse=Session.get('http://httpbin.org/Cookies/set/SessionCookie/123456789')# 发送第二个请求,自动携带之前的Cookiesresponse=Session.get('http://httpbin.org/Cookies')print(response.text)# 输出将包含'SessionCookie: 123456789'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1220719.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国产CAD这笔软件授权费,省得有点心疼

开厂子的,每天都在算账。原材料在涨价,人工工资在涨,连以前用的那套国外工业软件,每年的维护费和授权费也是一笔不小的开支。那软件功能是强大,但对于我们主要做中低端汽配件的来说,大部分功能根本用不上&a…

导师严选10个AI论文平台,助研究生轻松搞定论文写作!

导师严选10个AI论文平台,助研究生轻松搞定论文写作! AI 工具如何改变论文写作的未来 在当今学术研究日益激烈的背景下,研究生们面临着前所未有的挑战。从选题到撰写,再到查重和修改,每一个环节都可能成为影响论文质量的…

国产CAD仿真分析,把破坏性试验留在屏幕里

搞研发的都知道,样机试制是个烧钱的无底洞。以前做一个新产品,设计好了直接加工出来,然后上试验台去测。有时候测到一半,结构崩了,几万块钱的样机瞬间变成废铁。心疼不说,还得分析是哪里出了问题&#xff0…

一口气看懂!多模态大模型是个啥?能帮我们干啥?

一口气看懂!多模态大模型是个啥?能帮我们干啥?你是不是经常遇到这样的情况:想让AI画张图,还得费劲描述半天细节;或者给它一段视频,它却只能看懂文字说明?现在,这些麻烦可…

给服务器起个“网名叫啥“?聊聊云服务器域名那些事儿

给服务器起个"网名叫啥"?聊聊云服务器域名那些事儿 咱们平时上网刷网页、用APP,背后都藏着一个个"服务器"在工作。可你知道吗?这些服务器就像互联网上的"房子",每个房子都得有个门牌号&#xff0c…

一只蒟蒻的florr前期攻略(随本人更新,具有较强的真实性)

萌新攻略(血泪总结) 这里我按照成就茁壮成长的分级来写,毕竟萌新们看到1-20级这么大的跨度肯定蒙圈了(是本人了) 小Tips 地址:florr.io 保存你账号的秘诀: (注意:要先玩过,否则是无效的乱码!) 先按F12打开控制台,输入…

广东视频号广告代理:厚拓科技11年深耕,赋能华南企业短视频营销新增长

随着微信视频号生态的持续爆发,广东作为中国数字经济的前沿阵地,正迎来短视频营销的黄金时代。作为腾讯总部所在地,广东企业在视频号营销中拥有天然的地缘优势,但同时也面临着竞争激烈、投放门槛提升的挑战。深圳市…

2026年 焊管机/焊管机组/高频焊管设备厂家实力推荐榜:方管机与镀锌方管机组等核心设备专业解析与选购指南

2026年焊管机/高频焊管设备厂家实力推荐榜:方管机与镀锌方管机组等核心设备专业解析与选购指南 在金属加工与制造业持续升级的背景下,焊管设备作为生产建筑结构、机械制造、汽车、家具等领域所需管材的核心装备,其技…

结束数据的“马拉松”,开启决策的“实时模式”

当竞争对手已经通过数据看板实时调整策略时,你的团队是否还在为一份月度报表加班加点?这不仅是效率的差距,更是生存维度的落差。 2026年1月,在河北衡水的一场企业数智化分享会上,奥威软件的演讲引发了一场激烈的共鸣。…

Java计算机毕设之基于springboot的电器小家电机器人健康预警系统(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

意欧斯携手 SAP Business One 赋能生产制造企业数字化转型

一场始于数据协同的管理变革,让这家智能仓储领军企业实现了精细化管控与敏捷增长的双重突破。在智能制造的轰鸣声中,传统管理模式正面临前所未有的挑战。生产制造企业,尤其是身处智能仓储物流前沿的企业,如何打破数据孤岛&#xf…

【课程设计/毕业设计】基于SpringBoot与Vue的机器人健康预警系统设计与实现基于springboot的机器人健康预警系统【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

langGraph从入门到精通(十一)——基于langgraph构建复杂工具应用的ReAct自治代理

Tool Calling Agent 的局限性又在于:虽然它可以自主选择工具,但在其架构中,每次仅能执行一次函数调用(无论是单个外部函数还是多个外部函数)**。因此,当任务需要依次执行 A 工具、B 工具和 C 工具时&#x…

新手优化跨网络 DNS 解析速度全攻略

DNS 是所有网络访问的第一步,它决定了用户访问网站时能否快速获得服务器 IP 地址,从而直接影响网页加载速度、应用响应和整体用户体验。对于跨网络访问的场景,DNS 响应慢的问题尤其突出,很多新手站长在遇到访问缓慢时,…

08. 如何实现元器件按页分配位号?| OrCAD X Capture CIS 设计小诀窍第二季

OrCAD X Capture CIS设计小诀窍系列 --如何实现元器件按页分配位号 背景介绍:我们在进行原理图设计时,经常需要确定对应位号的器件位于哪页原理图,以便设计人员进行修改。如果使用通常的方式分配位号,需要人工进行查找和确认&am…

05. 如何实现原理图比较?| OrCAD X Capture CIS 设计小诀窍第二季

OrCAD X Capture CIS设计小诀窍系列--如何实现原理图比较背景介绍:我们在进行原理图设计时,经常需要对原理图进行版本更新。而如果设计师对最新版本的原理图不满意,想要回溯原理图修改了哪些内容,则需要进行原理图比较。而通过Cap…

06. 如何为 Off-Page Connector 添加去向页码?| OrCAD X Capture CIS 设计小诀窍第二季

OrCAD X Capture CIS设计小诀窍系列 --如何为Off-Page Connector添加去向页码 背景介绍:我们在进行原理图设计时,多页原理图经常会存在同一网络。而如果想要将它们连接起来,则需要用到Off-Page Connector。为了便于查看,则需要为…

从人脸检测到五官重塑:直播美颜SDK中人脸美型的核心技术解析

如果你经常看直播,可能会有这样的感觉:“现在的主播,好像很少有翻车的时候了。”不管是灯光复杂的室内,还是移动中的户外直播,人脸始终稳定、五官自然、轮廓不飘。很多人以为这只是“美颜滤镜开得好”,但实…

07. 如何批量放置 No Connect 符号?| OrCAD X Capture CIS 设计小诀窍第二季

OrCAD X Capture CIS设计小诀窍系列 --如何批量放置No Connect符号 背景介绍:我们在进行原理图设计时,经常会有引脚未使用。而对于这些未使用的引脚,则需要打上NC标识以免报错。当此类引脚较多时,一个个添加No Connect符号较为费…

直播美颜SDK对比分析:不同人脸美型方案的技术差异

在直播行业里,美颜几乎已经从“加分项”变成了“标配能力”。无论是秀场直播、直播带货,还是教育、企业私域直播,用户对画面的第一印象,往往决定了停留时长与互动意愿。而在所有美颜能力中,人脸美型又是最考验技术底子…