使用plotly模塊保存圖片
目的
使用Python3的Plotly模塊,實現對數據庫數據的讀取,然后形成Table表格,並通過釘釘機器人定時發送到釘釘群組。
難點
Plotly本身是通過html頁面展示的,先要把圖片保存下來需要安裝一些其他的包;通過網上的無數文章都是錯誤的,弄了將近兩天才把環境搞得,不得不感慨一下,下面就自己總結成文,飛快的就能搞定。
步驟
1、環境
CentOS Linux release 7.6.1810 (Core)
2、Python環境
3、基本庫安裝psutil
pip3 install psutil requests
4、使用plotly模塊必須得安裝orca
wget https://github.com/plotly/orca/releases/download/v1.2.1/orca-1.2.1-x86_64.AppImage
chmod +x orca-1.2.1-x86_64.AppImage
# 絕對路徑
ln -s /root/orca-1.2.1-x86_64.AppImage /usr/bin/orca
# 看orca命令是否可以顯示正確,如果報依賴包的錯誤,可以看下一個步驟,是主要的一些依賴包
orca --help
5、orca安裝相關得系統依賴包
yum install fuse-libs-2.9.2-11.el7.x86_64
yum install gtk2-2.24.31-1.el7.x86_64
yum install desktop-file-utils
yum install Xvfb
yum install xdg-utils-1.1.0-0.17.20120809git.el7.noarch
Tips:
這里報依賴包沒找到的話,你又不知道安裝什么樣的依賴包,那就通過這個命令去獲取 yum provides
yum provides libfuse.so.2
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.heanet.ie
* extras: ftp.heanet.ie
* updates: ftp.heanet.ie
fuse-libs-2.9.2-11.el7.i686 : File System in Userspace (FUSE) libraries
Repo : base
Matched from:
Provides : libfuse.so.2
6、添加腳本executable.sh
orca 執行不報錯后,執行腳本executable.sh,里面的文件路徑為第4步下載的文件
#!/bin/bash
xvfb-run -a /root/orca-X.Y.Z-x86_64.AppImage "$@"
7、測試
import plotly.graph_objects as go
import plotly.io as pio
fig = go.Figure(data=[go.Table(header=dict(values=['A Scores', 'B Scores']),
cells=dict(values=[[100, 90, 80, 90], [95, 85, 75, 95]]))
])
pio.write_image(fig, '1.png')
執行完這個腳本后,就會發現當前目錄下有一個1.png,就是我們保存的圖片,后續的話就可以通過釘釘的告警腳本把圖片發送到釘釘群組里。
使用shell生成表格:
可以根據makedown格式生成固定格式的表格文件,然后使用typora之類的工具打開,並復制到excel文件中