簡體   English   中英

使用Python生成JSON數據

[英]Using Python to generate JSON Data

我正在做一個小項目,目的是從服務器的數據庫生成報告。 該數據庫是SQLite,包含“連接”,“下載”等表。

我生成的報告最終將包含許多圖形,這些圖形顯示諸如“每天的連接數”,“本月的熱門下載量”之類的內容。

我計划將flot用於圖形,因為它使圖形看起來非常漂亮: 浮點圖

這是我目前的報告工作計划:

  • 靜態.HTML文件, 報告。 這將包含標題,嵌入式浮點圖等。

  • JSON數據文件。 這些將由我的報告生成python腳本生成,它們將基本上為每個表示每個圖的圖包含一個JSON變量,表示該圖應映射的數據集。 ([100,2009-2-2],[192,2009-2-3] ...)

  • 報告生成python腳本,它將加載SQLite數據庫,運行一組已設置的SQL查詢並吐出JSON數據文件。

這聽起來像是明智的設置嗎? 我忍不住覺得可以改善,但我不知道如何。 我希望報告是靜態的。 他們運行的服務器不能承受沉重的負擔,因此動態生成的報告是不可能的,並且對於該應用程序也是不必要的。

我擔心的是:

  • 我覺得Python腳本基本上沒有意義,所有執行的處理都是由SQLite完成的,我的腳本基本上將用於存儲SQL查詢和打包輸出。 通過更多的工作,SQLite可能可以為我完成此工作。

  • 看來我正在解決一個問題,在“執行sql查詢,在每日報告中吐出漂亮的圖形”必須完成數百次之前,必須解決許多次。 我只是在跟蹤任何廣泛的實現方面遇到麻煩。

對我來說聽起來很明智。

  • 您需要一些編程語言才能與SQLite對話。 您可以用C做到這一點,但是如果您可以用Python輕松編寫必要的粘合代碼,那為什么不呢? 與沒有最有效的程序相比,您幾乎可以節省更多的編寫時間。
  • 肯定有一些程序可以為您分析日志-例如,我聽說過Piwik 這是針對動態報告的,但毫無疑問,也有一些項目可以進行靜態報告。 但是它們可能不適合您需要的數據和輸出。 自己編寫它意味着您確切地知道自己所得到的,因此,如果工作量不太多,請繼續。

我覺得Python腳本基本上沒有意義,所有執行的處理都是由SQLite完成的,我的腳本基本上將用於存儲SQL查詢和打包輸出。 通過更多的工作,SQLite可能可以為我完成此工作。

也許是這樣,但是即使那樣,Python還是一種很棒的粘合語言。 另外,如果您需要做一些SQLite不擅長的處理,則Python已經存在。

看來我正在解決一個問題,在“執行sql查詢,在每日報告中吐出漂亮的圖形”必須完成數百次之前,必須解決許多次。 我只是在跟蹤任何廣泛的實現方面遇到麻煩。

我認為您傾向於使用HTTP提供的報告的通用類。 與問題集重疊的一件事是Django ,它提供了數據庫(支持SQLite)和Web服務器之間的Python接口,以及用於輸出的模板系統。

如果您只需要一個或兩個解決方案,那么我建議您查看SQLAlchemy與數據庫的接口, Jinja2作為模板的模板和/或Werkzeug的HTTP服務器接口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM