第四十九回 吴学究双掌连环计 宋公明三打祝家庄-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请求的示例:

python 复制代码
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请求变得简单且人性化。

安装:

python 复制代码
pip install requests

例子:

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

发送post

python 复制代码
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的替代品

安装:

bash 复制代码
pip3  install drissionpage

例子:

python 复制代码
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)

输出信息:

python 复制代码
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

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

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

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

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

相关推荐
m0_7369191020 分钟前
C++代码风格检查工具
开发语言·c++·算法
喵手27 分钟前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_9449347331 分钟前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy38 分钟前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
黎雁·泠崖1 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
开源技术1 小时前
DNS详解——域名是如何解析的
http
2301_763472462 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
肖永威2 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ2 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha2 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全