整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          Python Flask — 使用后端數據創建 HTML 表格

          本文中,我們將討論如何將一些表格數據從后端傳遞到 HTML 前端,并基于這些數據創建一個外觀不錯的表格。

          我們的文件結構

          為了簡單起見,讓我們只處理 2 個文件:

          • templates/index.html(在 templates 文件夾內)
          • app.py

          app.py 中的代碼

          from flask import Flask, render_template
          
          app = Flask(__name__)
          
          @app.route('/')
          def home():
          
              headers = ['fruit', 'price', 'country']
          
              tableData = [
                  {'fruit':'apple', 'price':4, 'country':'singapore'},
                  {'fruit':'orange', 'price':5, 'country':'singapore'},
                  {'fruit':'pear', 'price':6, 'country':'singapore'},
                  {'fruit':'apple', 'price':7, 'country':'malaysia'},
                  {'fruit':'orange', 'price':8, 'country':'malaysia'},
                  {'fruit':'pear', 'price':9, 'country':'malaysia'},
              ]
          
              return render_template(
                  'index.html',
                  headers=headers,
                  tableData=tableData
              )
          
          if __name__ == '__main__':
              app.run()

          app.py 包含我們的 Python Flask 應用程序。 請注意,表格標題和表格數據本身在 render_template 函數中傳遞給我們的 HTML 模板 index.html。

          我們希望以表格格式在我們的 HTML 前端中顯示此數據。

          templates/index.html 中的代碼

          此 HTML 文件從我們的 Python Flask 后端接收數據。 更具體地說,它接收 2 個變量——headers 和 tableData。

          <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
          
          <div class="px-5 mx-5">
              <h1>My Table</h1>
          
              <table class="table table-striped table-bordered">
                  <thead>
                      <tr>
                          {% for header in headers %}
                              <th>{{header}}</th>
                          {% endfor %}
                      </tr>
                  </thead>
          
                  <tbody>
                      {% for row in tableData %}
                          <tr>
                              <td>{{row['fruit']}}</td>
                              <td>{{row['price']}}</td>
                              <td>{{row['country']}}</td>
                          </tr>
                      {% endfor %}
                  </tbody>
              </table>
              
          </div>

          當我們運行我們的應用程序時會發生什么

          我們得到這個網頁。

          最后

          希望本文對您有所幫助!

          提:

          用python寫了一個簡單的log分析,主要也就是查詢一些key,value出來,后面也可以根據需求增加。查詢出來后,為了好看,搞個html 表格來顯示。

          需要的組件: jinja2 flask 的模板。

          先說下設計思路,主要是練習python代碼玩,高手略過

          模擬scrapy,搞個管線


          每個管線分預處理,分析器,和后處理。預處理的話,可以篩選下數據,分析器提取關鍵信息,然后把結果丟給后處理。html報表就是在后處理生成。

          再搞個manger類,管理很多個管線,雖然現在單路pipeLine就完成了,說不定以后還能擴展呢。



          我們可以定義預處理,比如過濾一些不關注的關鍵字,或者關注一些特定關鍵字的行


          預處理的話,只處理QtiDCT-C關鍵字的日志行。

          然后把經過預處理后的數據丟給分析器

          主要查詢行數據行里面是否有keyword,然后根據分隔符,和結束符來提取內容

          keyword delimiter xxxxxendwith 這樣個模式

          獲取最終結果存儲到字典里面 result[keyword]=xxxx。這里會trim,去掉 \r\n.

          這樣就有了結果集result.最后丟給posthandler 后處理。完成報表輸出。


          后處理主要是用jinja2的模板,然后傳遞參數,生成最終的html文件。

          這里的jinja_template.temple, 內容如下



          有了模板,就可以在渲染模板的時候提供字典,變量,在模板里面顯示。最終完成報表的輸出。


          最終使用


          最終在main 方法中,通過-d參數傳入log所在目錄,然后迭代所有的文件,使用input 把文本文件轉換成行數據的list,丟給管線,最后把管線丟給manager,調用process ,完成txt日志的分析,到最后html的生產。

          器之心報道

          項目作者:vinayak mehta參與:一鳴

          從 PDF 表格中獲取數據是一項痛苦的工作。不久前,一位開發者提供了一個名為 Camelot 的工具,使用三行代碼就能從 PDF 文件中提取表格數據。

          PDF 文件是一種非常常用的文件格式,通常用于正式的電子版文件。它能夠很好的將不同的排版格式固定下來,形成版面清晰且美觀的展示效果。然而,對于想要從 PDF 中提取信息的人們來說,PDF 是個噩夢,尤其是表格。

          大量的學術報告、論文、分析文章都使用 PDF 展示其中的表格數據,但是對于如果想要直接從表格中復制數據則會非常麻煩。不久前,有一位開發者提供了一個可從文字 PDF 中提取表格信息的工具——Camelot,能夠直接將大部分表格轉換為 Pandas 的 Dataframe。

          • 項目地址:https://github.com/camelot-dev/camelot

          Camelot 是什么

          據項目介紹稱,Camelot 是一個 Python 工具,用于將 PDF 文件中的表格數據提取出來。

          具體而言,用戶可以像使用 Pandas 那樣打開 PDF 文件,然后利用這個工具提取表格數據,最后再指定輸出的形式(如 csv 文件)。

          代碼示例

          項目提供的 PDF 文件如圖所示,假設用戶需要提取這些文字之間的表格 2-1 中的信息。

          PDF 文件。我們需要提取表格 2-1。

          使用 Camelot 提取表格數據的代碼如下:

          >>> import camelot
          >>> tables = camelot.read_pdf('foo.pdf') #類似于Pandas打開CSV文件的形式
          >>> tables[0].df # get a pandas DataFrame!
          >>> tables.export('foo.csv', f='csv', compress=True) # json, excel, html, sqlite,可指定輸出格式
          >>> tables[0].to_csv('foo.csv') # to_json, to_excel, to_html, to_sqlite, 導出數據為文件
          >>> tables
          <TableList n=1>
          >>> tables[0]
          <Table shape=(7, 7)> # 獲得輸出的格式
          >>> tables[0].parsing_report
          {
           'accuracy': 99.02,
           'whitespace': 12.24,
           'order': 1,
           'page': 1
          }
          

          以下為輸出的結果,對于合并的單元格,Camelot 在抽取后做了空行處理,這是一個穩妥的方法。

          安裝方法

          項目作者提供了三種安裝方法。首先,你可以使用 Conda 進行安裝,這是最簡單的。

          conda install -c conda-forge camelot-py
          

          最流行的安裝方法是使用 pip 安裝。

          pip install camelot-py[cv]
          

          還可以從項目中克隆代碼,并使用源碼安裝。


          上一篇:HTML多層級下拉框
          下一篇:jQuery 事件
          主站蜘蛛池模板: av无码人妻一区二区三区牛牛| 韩国美女vip福利一区| 无码人妻品一区二区三区精99| 精品人妻系列无码一区二区三区 | 红桃AV一区二区三区在线无码AV| 一区二区在线观看视频| 无码人妻精品一区二| 国产福利一区二区三区视频在线| 清纯唯美经典一区二区| 91国偷自产一区二区三区| 亚洲韩国精品无码一区二区三区| 波多野结衣中文一区二区免费| 99久久无码一区人妻a黑| 台湾无码AV一区二区三区| 美女视频一区二区| 日本一道高清一区二区三区| 中文字幕在线看视频一区二区三区| 亚洲视频在线一区二区| 在线观看一区二区三区视频| 中文字幕乱码亚洲精品一区| 日韩亚洲AV无码一区二区不卡| 亚洲美女高清一区二区三区| 日韩视频一区二区| 亚洲福利电影一区二区?| 久久99国产精一区二区三区| 色一乱一伦一区一直爽| 日韩精品免费一区二区三区| 亚洲AV无码一区二区三区牛牛 | 亚洲一区二区影院| 中文字幕人妻丝袜乱一区三区| 国产伦精品一区二区三区视频金莲 | 在线播放国产一区二区三区 | 亚洲AV无码一区二区乱子仑| 亚洲国产福利精品一区二区| 中文字幕在线视频一区| 久久99精品免费一区二区| 亚洲国产综合无码一区二区二三区 | 久久久国产一区二区三区 | 久久久久久人妻一区精品| 久久精品一区二区三区不卡| 国产AV午夜精品一区二区三区|