修改http_charfinder.py使能在python311环境中运行

需要修改两个函数,第一个是init函数,修改如下:

async def init(loop, address, port): # <1>

app = web.Application(loop=loop) # <2>

app.router.add_route('GET', '/', home) # <3>

app = web.Application() # <2>

app.add_routes(web.get('/', home))

handler = app.make_handler() # <4>

server = yield from loop.create_server(handler,

address, port) # <5>

runner = web.AppRunner(app)

await runner.setup()

server = await loop.create_server(runner.server,

address, port) # <5>

return server.sockets0.getsockname() # <6>

不修改程序会报deprecation警报

第二个函数是home函数,修改如下:

def home(request): # <1>

query = request.GET.get('query', '').strip() # <2>

query = request.query.get('query', '').strip() # <2>

...

不修改程序会报如下错误:

Error handling request

Traceback (most recent call last):

...

File "D:\fluentPy\chapter17_18\http_charfinder.py", line 29, in home

query = request.GET.get('query', '').strip() # <2>

^^^^^^^^^^^

AttributeError: 'Request' object has no attribute 'GET'

因为request.GET已经被弃用了

如果程序运行正常,浏览器界面如下:

相关推荐
RFID固定资产管理系统1 小时前
公司RFID管理系统揭秘
大数据·python
IVEN_1 小时前
Python官方包、Conda、uv,应该怎么选
python
凡尘——雨落凡尘2 小时前
Python列表索引越界IndexError问题深度解析与解决办法
python·indexerror·list index out of range
Metaphor6922 小时前
使用 Python 在 Word 文档中添加或删除文本框
python·word
郝同学今天有进步吗3 小时前
构建 LangGraph Code Review Agent(七):实现规则匹配、Finding Guardrails 与 Markdown 报告
python·ai·fastapi·code review
xuhe23 小时前
一劳永逸!解决 AutoDL 系统盘(30GB)爆满与 pip 缓存迁移
linux·python·ai·jupyter
CodexDave4 小时前
Python 自动化接单实战(一):把 CSV 需求做成配置驱动解析器
java·python·自动化·json·数据清洗·python自动化·csv处理
m沐沐4 小时前
【深度学习】循环神经网络RNN——结构、原理与长期依赖问题解析
人工智能·pytorch·python·rnn·深度学习·算法·机器学习
风吹心凉4 小时前
python3基础2026.7.28
开发语言·python
曲无忆5 小时前
LLMs赋能依赖类型证明自动化
python