程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> PDF數據提取------1.介紹,pdf數據提取------1

PDF數據提取------1.介紹,pdf數據提取------1

編輯:C#入門知識

PDF數據提取------1.介紹,pdf數據提取------1


1.關於PDF文件

 

    PDFPortable Document Format的簡稱,意為“便攜式文件格式”)是由Adobe Systems在1993年用於文件交換所發展出的文件格式。它的優點在於跨平台、能保留文件原有格式(Layout)、開放標准,能自由授權(Royalty-free)自由開發PDF兼容軟件。(PDF - 維基百科)

 

2.關於解析PDF

      就像大神靈感之源的博文關於PDF的代碼,真是多得不得了。。。,由於現在實習公司需要從大量文檔中提取金融數據.對於網頁解析我們有強大的HtmlAgilityPack和ScrapySharp等.對於office家族裡excel、word等 直接用.net裡類庫就行了。唯獨對處理PDF沒有一個統一方案。當然,我也沒有把全部pdf工具研究一遍,感覺大多數工具對於解析pdf功能確實不是很完美。(可能我的見識短淺,只不過還沒遇到像解析網頁那樣解析pdf的工具),現在公司有個系統中有個一個關於pdf數據解析模塊。這個模塊也是先將PDF轉換Html格式文件,然後解析html文件。解析標記語言html已經有很多完美辦法,但是問題是由於PDF文件特點,解析PDF本來就是無法保證正確性的事情,而現在卻要解析轉換後的HTML豈不是更加沒有保證了。經過詢問得知這個方法在解析PDF中表現確實不是很好。

 

3.我的方案

      公司裡需要解析PDF種類和數量有很多,對於Analyst來說每天從大量PDF中手動提取信息是無比痛苦的事情,也是對眼睛和身心巨大考驗。對於每種PDF解析策略當然也是不一樣的。我打算根據每種不同PDF文件分別介紹下我的處理方案。我的方案是基於PDFNet.dll封裝了一個針對公司業務的解析方案。當然了這個DLL並不是開源的,但是在Debug版本中沒問題了,一次意外的忘記導入license在內部發布了release產品中只有一台電腦出現無法使用問題。當然,公司也不會在乎這點小錢,我們是有license的。廢話不多說,也希望園子裡的大神們能給小碼農點建議或者能提出更好的方案來!

 

4.分類介紹

        根據不同需求我打算分成系列來介紹這個PDF解析方案。

        1.PDF中文本字符串格式中關鍵值信息抓取(已完成)

           簡介:這種解析比較傳統最簡單主要熟練使用Regular Expression做語義識別和驗證.

        2.PDF類似表格形式關鍵值數據抓取。(已完成)

           簡介:這種格式需要用的封裝數據結構PdfString類和PdfAnalyzer類,根據給定關鍵詞在指定范圍提取數據

        3.需要PDF中大量數據轉換到Excel中去 (已完成)

           簡介:基與2的延伸,加入一個自動模糊匹配到行和列邊界范圍,根據位置坐標排序提取正確數據信息。

        4.PDF中數據保存圖片格式(未完成)

           想法:這種PDF文件我目前還沒好的處理辦法,應該需要用到圖像識別方面的算法。      


怎從PDF中提取出PDF格式的內容

我不知道你是用哪款軟件看PDF文檔的,想復制PDF文檔的文字,很多軟件都不支持,我曾經也是找了很久。能復制PDF文檔的:Foxit Reader 3.1.4.1211,綠色版本,不用安裝,可以直接復制PDF文檔,但不支持拍照版,如果是掃描版,一點問題都沒有,好在PDF文檔大多數都是掃描版。
Foxit Reader 3.1.4.1211下載地址很好找的,百度一下就很容易能找到下載鏈接的。
 

教一個excel問題,對於數據的公式提取,數據與方法如下:

1.將數據復制到旁邊一列 旁邊一列用 升序 這樣每一行都是一個小組 1-450 2-451
2不是很清楚
3. 輸入=a+b 然後下拉 輸入 =2a+b 然後下拉
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved