天天看點

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

大家好,這節課我們接 循環下載下傳釘釘出差審批單(PDF檔案)場景,繼續講解該場景接下來的操作 - 循環從PDF檔案中擷取指定資訊:日期及出差理由,并把對應資訊存入資料表中。

我們在RPA擷取PDF文檔的資料中講過表格類型的PDF文檔可以轉換為Excel操作,如果不是純表格的PDF文檔可以轉換為Word文檔操作,那麼這節課我們再講講将PDF文檔轉換為txt檔案并從中擷取指定資訊的方案。接下來,一起看看如何操作。

準備工作:

  • 準備開發流程的電腦,請打開雲擴學院連結檢視雲擴RPA編輯器運作的硬體&軟體要求。
  • 打開雲擴官網下載下傳編輯器并安裝(本節課使用編輯器版本為:1.1.2009.10)。
  • 已下載下傳釘釘出差審批單-PDF文檔。

流程操作步驟:

  • 搭建資料表

1. 建立項目并打開項目。

2. 拖入“搭建資料表”元件,定義列名“日期”與“出差事由”并建立資料表變量:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
  • PDF文檔轉TXT文檔

1. PDF格式轉換工具元件在元件市場中,是以我們需要先把需要的對應元件從元件市場從下載下傳下來:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

2.  因為我們需要循環處理PDF檔案,是以先拖入“周遊檔案夾”元件,并定義含有PDF檔案的檔案夾路徑:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

3. 拖入“PDF轉Text”元件,定義PDF檔案路徑與轉換後的txt檔案路徑:

a) PDF檔案路徑:filePath

b) 轉換後Text檔案路徑:filePath.Split('.')[0] + ".txt" 

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
  • 讀取檔案内容

1. 拖入“讀取檔案”元件并輸入檔案路徑與定義輸出變量,用以讀取上步操作中轉換後的txt檔案資料,如下圖所示:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
  • 擷取指定資訊

1. 拖入“截取文本”元件擷取所需資料。首先我們打開PDF檔案檢視資料的位置 

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

從上圖可見,需要擷取的資料為:

a)出差事由(内容在關鍵字“出差事由”與“出差天數”之間);

b)時間(内容在關鍵字“時間”與“考勤”之間)

首先擷取出差事由:輸入“開始位置”(用text.IndexOf("出差事由"))與“結束位置”(text.IndexOf("出差天數")),定義截取結果變量,并拖入“确認框”元件驗證擷取的内容:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

運作流程檢視擷取資料:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

從上面的圖可見,擷取的資料除了可用資料外還多出前面的“出差事由”與後面的“出”,那麼,我們需要做索引偏移,設定開始位置與結束位置如下圖所示:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

2. 同樣方法擷取出差時間,如下圖所示:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
  • 将擷取的資料添加到資料表中

1.  拖入“添加資料行”元件,并把上步操作擷取的時間與出差事由内容寫入資料表行數組中:new Object[]{dateText.Trim(),businessReason.Trim()}:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
  • 預覽資料表及天數txt檔案

至此,流程已開發完成,為了展示擷取資料是否正确添加到資料表中,我們拖入“預覽資料表”元件進行預覽資料。再拖入“删除檔案/檔案夾”元件删除生成的txt檔案:

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

如果需要把資料存入Excel檔案,則用“打開/建立”元件與“寫入區域”元件将資料寫入Excel檔案中,儲存流程并運作,下面視訊供參考:

好了各位,今天的課程就到此結束。我們可以用這種方法擷取很多種PDF文檔中的資料,比如pdf格式的發票,用OCR需要另外收費,那麼我們何不用這種方式免費擷取呢?免費還好用的東西誰不值得擁有呢?祝各位流程開發順利~

快來點選閱讀原文,申請下載下傳雲擴RPA社群版吧!

往期精彩課程推薦

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...
c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

-END- 上海雲擴資訊科技有限公司是全球RPA領域的創新領軍者。公司以自研的雲擴RPA平台為核心,緻力于為各行業客戶提供智能的RPA機器人産品與解決方案,通過RPA賦能,持續為客戶創造價值,助力企業推進數字化轉型。

c/c++讀取txt檔案中指定行的内容_雲擴RPA流程開發課堂 | 如何批量擷取PDF文檔中的指定資訊并存入資料表?...

繼續閱讀