Python + SeaTable | 從啟信寶網站獲取公司融資等資訊至 SeaTable 表格

SeaTable開發者版發表於2022-01-20
本案例基於一家投資公司的真實需求。

作為一家投資公司,需要及時更新所關注的公司的融資資訊等狀況,那如何來解決這個問題呢。一般情況下,我們只需從啟信寶等網站獲取公司的一系列公開資訊,包括工商資訊、股東法人、融資資訊等即可。但如果每次登入網站來挨個查詢,顯然低效又不方便。而如果用 SeaTable 表格來記錄公司名稱、統一信用程式碼等資訊,然後利用啟信寶 API 獲取公司的融資資訊到 SeaTable 表格,就可以做到高效和一目瞭然。而且還可以手動修改和維護一些啟信寶遺漏的或不準確的資訊。

下面,本文就基於一家投資公司的上述真實需求來分享一個案例,它將展示如何通過啟信寶的對外 API 介面獲取公司資訊並快速整合到 SeaTable 表格。包括以下內容:

資料同步

首先登入 SeaTable 後,新增一個表格, 裡面寫入基本的公司資訊,比如把企業名稱、統一信用程式碼作為基礎資料。如下圖中的「公司」子表:

接下來,在表格中再建立一個子表「融資資訊」用於後續填入融資等資訊。然後為這個子表插入列,如融資輪次、統一信用程式碼、融資日期、融資額等。如下圖:

然後,用「公司」子表中的統一信用程式碼向啟信寶的 API 請求資料。此時,需要自己在啟信寶上申請 API 的 APP_KEY 和 SECRET_KEY, 同時需要新增本地的 IP 地址到啟信寶的 IP 白名單中。做好這些準備工作後,就可以用 Python 結合 SeaTable 的相關 API 對融資資料進行寫入。以下是資料同步的演算法邏輯:

  • 對「公司」子表中的每一個公司,使用啟信寶 API,獲取公司的融資資料,包括融資金額、融資輪次、融資日期等。
  • 對比「融資資訊」子表:

如果某次融資記錄不存在,那麼進行新增;

如果已存在,但是表格中的資訊不一致,那麼認為表中資訊是經過使用者手工更新過的,不進行修改;

如果已存在,而且資訊一致,也不進行處理。

具體的流程程式碼請參照此處完整的案例指令碼, 資料寫入之後的表格如下(融資額只作演示用):

資料處理(快速連結子表的關聯記錄)

在前面完成資料獲取和同步後,此時可以用 SeaTable 的“資料處理”功能中的“自動新增連結”,根據「公司」和「融資資訊」兩個子表的“統一信用程式碼”列匹配的規則,來為這兩個子表一鍵快速新增連結記錄,達到關聯目的。操作如下:

在表格工具欄點選“···”按鈕,選擇“資料處理”中的“自動新增連結”,如下圖:

然後根據匹配規則,選擇兩個子表中的“統一信用程式碼”列相等,再點選執行即可。如下圖:

點選執行後, 兩個子表會同時自動生成連結列並關聯上對應的記錄。即「公司」表會自動關聯上「融資資訊」表中每個統一信用程式碼的所有融資記錄。如下圖中的“融資資訊”列(點選單元格中的記錄,可進入檢視和編輯行詳情)。如下圖:

同時,「融資資訊」表也會自動連結上「公司」表中的關聯記錄,即每行融資記錄都關聯上了屬於哪個公司(點選“公司”列單元格中的記錄,可進入檢視和編輯詳情)。如下圖:

資料分析及視覺化

在 SeaTable 表格中,如上圖所示,可以通過增加表格檢視來過濾出不同角度的資料,方便快速切換檢視。另外,這也方便對不同角度的資料(檢視)進行資料分析和視覺化。比如用表格的“統計”功能可快速建立出統計表格和基礎的圖表;用“高階統計”外掛(從表格右側“外掛”裡一鍵新增)可以快速建立出型別更豐富的統計分析圖表,對融資表完成更多維度和形式的資料視覺化。圖表可匯出。如下圖:

總結

綜上所述,利用 SeaTable 便捷的資料管理、完善的 Python API 功能、強大的資料分析和視覺化能力,再結合簡單的 Python 指令碼,就可以靈活地把我們想要的資訊高效而直觀地呈現出來,從而節省了大量的人力計算甚至是應用開發成本,輕鬆實現更高效和更高水平的辦公自動化。當然,這僅是一個參考案例,我們還可以用 Python 結合 SeaTable 的其他豐富功能實現更多工作流程和應用。

相關文章