修改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.sockets[0].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已经被弃用了

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

相关推荐
效率客栈老秦几秒前
Python Trae提示词开发实战(4):用Pandas Excel打造企业级自动化报表让效率提升10倍
python·数据分析·自动化
slient_love6 分钟前
n8n部署安装(docker)、支持Code in Python (Native)节点
python·docker·n8n
寻星探路7 分钟前
深度解析网络编程套接字:从 Socket 底层原理到 Java 高性能实战
java·网络·人工智能·python·机器学习·php
多米Domi01112 分钟前
0x3f 第23天 黑马web (前端三件套,maven,web入门、mysql)黑马反射注解 hot100普通数组
java·python·mysql·算法·leetcode·maven
@zulnger12 分钟前
python 学习笔记(面向对象)
笔记·python·学习
2501_9418072612 分钟前
从微服务监控到智能运维的互联网工程语法实践与多语言探索
开发语言·python
DREAM.ZL13 分钟前
基于Django的旅游推荐系统
python·django·旅游
Hello.Reader14 分钟前
PyFlink Table API 用纯 Python 写一个 WordCount(读 CSV + 聚合 + 写出)
开发语言·python
Python极客之家19 分钟前
基于数据挖掘和知识图谱的医疗智能问诊系统
人工智能·python·机器学习·数据挖掘·毕业设计·知识图谱
小途软件21 分钟前
springboot013基于SpringBoot的旅游网站的设计与实现
java·人工智能·pytorch·python·深度学习·语言模型