#-*- encoding: utf-8 -*- from flask import Flask, request, jsonify app = Flask(__name__) import pandas as pd # from exts import db # import config import json # 绑定配置文件 直接读取配置文件里面的内容。 # 用于从一个 Python 对象中加载配置项到应用程序的配置中。 # app.config.from_object(config) # 先创建 后面再进行绑定。。 # db.init_app(app) """ = f"mysql+pymysql://{USERNAME}:{PASSWORD}@{HOSTNAME}:{PORT}/{DATABASE}?charset=utf8mb4" 创建了一个 SQLAlchemy 对象, db.init_app(app) 将应用程序实例与 SQLAlchemy 对象关联起来,使得在应用程序中可以通过 db 对象来进行数据库操作。 """ @app.route('/hello') def hello(): return "hello" @app.route('/') def getTrendHis(): return jsonify({"code": 200, "message": "hello world"}) @app.route('/shujukexue2') def shujukexue2(): df = pd.read_excel("./学生信息表.xlsx") table_html = df.to_html() return f""" <html> <body> <h1>学生信息表</h1> <div>{table_html}</div> </body> </html> """ if __name__ == '__main__': app.run(debug=True)具体意思是什么
时间: 2024-03-11 20:44:25 浏览: 234
这是一个使用 Flask 框架搭建的 Web 应用程序,它可以提供一些接口服务,如返回 "hello" 字符串、返回 JSON 格式数据、返回从 Excel 文件中读取的数据表格等。通过访问不同的 URL 可以触发不同的服务,例如 "/hello" 返回 "hello" 字符串。程序中还包含了使用 pandas 库读取 Excel 文件并转换为 HTML 格式的表格的代码。在程序启动时,会将配置文件中的配置项读取到应用程序的配置中。
相关问题
上面的前端代码加上下面的后端代码,访问报错,帮我检查错误from flask import Flask, make_response from flask import render_template from flask import request import os app = Flask(__name__) @app.route('/') def index(): return render_template('1.html') # @app.route('/index/') # def root(): # uid = str(request.args['uid']) # with open("code_save.csv", "a+", encoding='utf-8')as f: # f.write(uid) # # os.system("python test.py") # response = make_response("被返回的信息") # return response @app.route('/post/') def post(): json = request.json print(json+'-*****************************************') return json if __name__ == '__main__': app.run(debug=True, host='0.0.0.0', port=112)
你的代码中有一些问题,可能导致运行出错。错误可能来自以下几个方面:
1. 没有在 HTML 文件中设置正确的表单提交方式。
在 `1.html` 文件中,你需要将表单的提交方式设置为 POST 方法,如下所示:
```html
<form action="/post/" method="POST">
<!-- 表单内容 -->
</form>
```
2. 没有导入 Flask 库中的 request 和 make_response 方法。
在你的代码中已经导入了这两个方法,但是你需要将它们从 Flask 库中导入,如下所示:
```python
from flask import Flask, render_template, request, make_response
```
3. 没有正确处理 POST 请求的数据。
在 `post()` 函数中,你需要使用 `request.get_json()` 方法获取 POST 请求中的数据,而不是使用 `request.json` 属性。修改后的代码如下:
```python
@app.route('/post/', methods=['POST'])
def post():
json = request.get_json()
print(json+'-*****************************************')
return json
```
4. 没有正确设置路由。
在你的代码中,`root()` 函数被注释掉了,并且没有设置路由。如果你想要使用 `/index/` 路由,你需要取消注释 `root()` 函数,并将其设置为该路由的处理函数,如下所示:
```python
@app.route('/index/')
def root():
uid = str(request.args['uid'])
with open("code_save.csv", "a+", encoding='utf-8') as f:
f.write(uid)
# os.system("python test.py")
response = make_response("被返回的信息")
return response
```
如果你不需要该路由,可以将其删除。
我的程序代码为:import json import requests from bs4 import BeautifulSoup from flask import Flask, jsonify, request app = Flask(__name__) # 获取新闻列表 @app.route('/news_list', methods=['GET']) def get_news_list(): url = 'https://www.ecjtuit.edu.cn/' r = requests.get(url) r.encoding = 'utf-8' soup = BeautifulSoup(r.text, 'html.parser') news_list = soup.select('.new_list li a')[:5] result = [] for news in news_list: news_title = news['title'] news_url = url + news['href'] result.append({ 'title': news_title, 'url': news_url }) return json.dumps(result, ensure_ascii=False) @app.route('/get_carousel_info') def get_carousel_info(): url = 'https://www.ecjtuit.edu.cn/' r = requests.get(url) r.encoding = 'utf-8' soup = BeautifulSoup(r.text, 'html.parser') carousel_items = soup.select('.bd ul li a') # print(carousel_items) result = [] for item in carousel_items: try: title = item['title'] href = url + item['href'] img_src = item.img['src'] result.append({ 'title': title, 'href': href, 'img_src': 'https://www.ecjtuit.edu.cn' + img_src }) except TypeError: # 如果出现 TypeError 异常,则跳过该 item pass return jsonify(result) if __name__ == '__main__': app.run(debug=True)
这是一个使用 Flask 框架开发的 web 应用程序,通过对指定网站进行爬虫,获取新闻列表和轮播图信息,并提供 API 接口供其他应用程序调用。其中 `get_news_list()` 函数用于获取新闻列表,`get_carousel_info()` 函数用于获取轮播图信息。这个应用程序可以在本地运行,也可以部署到服务器上提供服务。
阅读全文