第四十九回 吴学究双掌连环计 宋公明三打祝家庄-Python与HTTP服务交互

本文主要是介绍第四十九回 吴学究双掌连环计 宋公明三打祝家庄-Python与HTTP服务交互,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


吴用请戴宗从梁山请来铁面孔目裴宣、圣手书生萧让、通臂猿侯健、玉臂匠金大坚来帮忙。又告诫扈家庄的扈成,打起来不要去帮祝家庄。

孙立把旗号改成“登州兵马提辖孙立”,来祝家庄找峦廷玉,被热情接待。

第三天,宋江派小李广花荣来打,跟祝彪不分胜负。

第四天,宋江又来打,故意让孙立抓住了石秀。

第五天,宋江兵分四路来打祝家庄,祝家庄人马一齐杀出去。孙立孙新就把梁山的旗号插到门楼上,邹润邹渊去放出了原来被抓的七个人,在祝家庄里杀起来。最终祝家庄被宋江拿下,扈家庄除了扈成逃走了,其他也都被李逵杀了。

宋江想将祝家庄人全杀掉,后来是看在帮助石秀的钟离老人面上,赦免了整个庄子。

里应外合这招,一招鲜吃遍天,被宋江和吴用玩透了!同样it技术中,学会python与http服务交互,也是一项极具价值的技能!

Python与HTTP服务交互

可以通过http.client requests RissionPage等。

http.client标准库

http.client 是Python标准库中的一个模块,用于发送HTTP请求。这个模块提供了一个低级别的接口,允许你手动构建HTTP请求并处理响应。下面是对 http.client 的详细介绍:

使用方法

使用 http.client 发送HTTP请求通常涉及以下步骤:

  1. 创建连接:使用 http.client.HTTPSConnectionhttp.client.HTTPConnection 创建一个连接对象。

  2. 发送请求:使用连接对象的 request 方法发送请求。你需要指定请求方法(如 'GET'、'POST' 等)、请求的URI、以及可选的请求头和请求体。

  3. 获取响应:使用连接对象的 getresponse 方法获取响应对象。这个对象是一个 http.client.HTTPResponse 实例,它提供了对响应的访问。

  4. 读取响应内容:你可以使用响应对象的 read 方法读取响应体。

  5. 关闭连接:完成请求和响应处理后,记得关闭连接。

示例代码

下面是一个使用 http.client 发送GET请求的示例:

import http.client  # 创建连接  
conn = http.client.HTTPSConnection("www.example.com")  # 发送GET请求  
conn.request("GET", "/")  # 获取响应  
response = conn.getresponse()  # 输出响应状态码和响应体  
print(response.status, response.reason)  
print(response.read())  # 关闭连接  
conn.close()

http.client 提供的是底层的HTTP通信功能,如果你想要更高级的功能,如自动处理重定向、连接池等,你可能需要考虑使用其他库,如 requests

requests 

requests库是一个用Python语言编写的HTTP客户端库,基于urllib3模块,采用Apache2 Licensed开源协议。这个库使得发送HTTP请求变得简单且人性化。

安装:

pip install requests

例子:

import requests  # 发送GET请求到指定的URL  
response = requests.get('https://www.example.com')  # 输出响应的状态码  
print(response.status_code)  # 输出响应的内容  
print(response.text)

发送post

import requests  # 发送POST请求到指定的URL,并附带一些数据  
url = 'https://www.example.com/post'  
data = {'key1': 'value1', 'key2': 'value2'}  
response = requests.post(url, data=data)  # 输出响应的状态码和内容  
print(response.status_code)  
print(response.text)

RissionPage

RissionPage 是一个基于 python 的网页自动化工具。

它既能控制浏览器,也能收发数据包,还能把两者合而为一。

可兼顾浏览器自动化的便利性和 requests 的高效率。

它功能强大,内置无数人性化设计和便捷功能。

它的语法简洁而优雅,代码量少,对新手友好。

个人理解,它是一个request的替代品

 安装:

pip3  install drissionpage

例子:

from DrissionPage import SessionPage# 创建页面对象
page = SessionPage()# 爬取3页
for i in range(1, 4):# 访问某一页的网页page.get(f'https://gitee.com/explore/all?page={i}')# 获取所有开源库<a>元素列表links = page.eles('.title project-namespace-path')# 遍历所有<a>元素for link in links:# 打印链接信息print(link.text, link.link)

输出信息:

zan8in/afrog https://gitee.com/zanbin/afrog
xieguigang/Darwinism https://gitee.com/xieguigang/Darwinism
RTE-Dev/RedPlayer https://gitee.com/rte-dev/RedPlayer
panday/chat-master-web https://gitee.com/panday94/chat-master-web

宋江走后,知府到李家庄打听祝家庄的情况,说李应勾结梁山,把他和杜兴一起绑了,路上遇到宋江、林冲、花荣、杨雄、石秀,将他俩救下。

回到梁山,宋江才告知实情,原来那知府是假扮的,他们走后就把家人和财产也运到梁山,还放火把庄院也烧了,这样李应和杜兴也只好上山了。

第二天,宋江做媒,将一丈青扈三娘许配给矮脚虎王英。大家正在吃喜酒,听见山下有人来报:朱贵头领酒店里,有个郓城人要来见头领。

欲知后事如何,且听下回分解。

这篇关于第四十九回 吴学究双掌连环计 宋公明三打祝家庄-Python与HTTP服务交互的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/774626

相关文章

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。

nudepy,一个有趣的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个有趣的 Python 库 - nudepy。 Github地址:https://github.com/hhatto/nude.py 在图像处理和计算机视觉应用中,检测图像中的不适当内容(例如裸露图像)是一个重要的任务。nudepy 是一个基于 Python 的库,专门用于检测图像中的不适当内容。该

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

【Linux】应用层http协议

一、HTTP协议 1.1 简要介绍一下HTTP        我们在网络的应用层中可以自己定义协议,但是,已经有大佬定义了一些现成的,非常好用的应用层协议,供我们直接使用,HTTP(超文本传输协议)就是其中之一。        在互联网世界中,HTTP(超文本传输协议)是一个至关重要的协议,他定义了客户端(如浏览器)与服务器之间如何进行通信,以交换或者传输超文本(比如HTML文档)。