Flask 获取Web项目全部url + methods

Flask 获取Web项目全部url + methods

基本语句:app.url_map
app.url_map:会获取整个项目中所有的路由信息,但并不仅仅局限与url+methods,获取内容如下:
在这里插入图片描述
整个数据的格式并不是所显示的元组/列表格式,而是Map类型要获取数据,不能通过索引和下标来获取。
因此要获取其中的关键数据,需要以下几步:

  • 1:通过app.url_map.__dict__将Map转化成字典格式
    在这里插入图片描述
  • 2:通过观察发现转化成字典格式后:url、methods等信息的key值为’_rules’,因此可以通过设置key值为’_rules’来获取具体的数据。
    基本语句:app.url_map.dict[‘_rules’]
    获取数据格式如下图:
    在这里插入图片描述
  • 3:到此时,所有的格式转化完成,如果获取url信息,则可以直接通过下标索引来获取数据,通过基本的遍历来获取所有url。
 for i in range(len(app.url_map.__dict__['_rules'])):
        print(app.url_map.__dict__['_rules'][i])

在这里插入图片描述

#注意:如果需要将url提取出来或者进行其他操作,则需要将【 url强转成字符串 】才可以更进一步的操作,不然会报格式错误

基本语句str(app.url_map.dict[‘_rules’][i])

  • 4:获取所有的methods数据,通过内置的 .methods方法来获取

基本语句:app.url_map.dict[‘_rules’][i].methods

#注意:如果要对methods的数据进行操作需要将数据集合转化成列表格式才能进行,并且只能通过获取准确的url目标才能使用该方法,不然会错误,简而言之就是不能一次性获取全部的methods信息。

基本语句:list(app.url_map.dict[‘_rules’][i].methods)
在这里插入图片描述

【文章编写不易,如需转发请联系作者!】

猜你喜欢

转载自blog.csdn.net/qq_46170664/article/details/123014856
今日推荐