欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

利用python將圖片版PDF轉(zhuǎn)文字版PDF

系統(tǒng) 1857 0

圖片版PDF無法復制,轉(zhuǎn)化成文字版的PDF后使用更方便.

我們需要用到python3.6,pypdf2,ghostscript,PythonMagick,百度文字識別服務和pdfkit.

安裝

安裝python3.6 略

安裝ghostscript

https://ghostscript.com/download/gsdnld.html

安裝wkhtmltopdf

https://wkhtmltopdf.org/downloads.html

pip安裝PyPDF2,ghostscript,baidu-aip,pdfkit

            
pip install PyPDF2
pip install ghostscript
pip install baidu-aip
pip install pdfkit
          

pip安裝PythonMagick

https://www.lfd.uci.edu/~gohlke/pythonlibs/

            
cd 下載目錄
pip install PythonMagick?0.9.13?cp36?cp36m?win_amd64.whl
          

pypdf2用于拆分和合并PDF

示例代碼如下:

            
#導入PdfFileReader和PdfFileWriter
from PyPDF2 import PdfFileReader, PdfFileWriter
#獲取一個pdf對象
pdf_input = PdfFileReader(open(r'pdf路徑', 'rb'))
#獲取pdf頁數(shù)
page_count = pdf_input.getNumPages()
#獲取pdf第四頁的內(nèi)容
page = pdf_input.getPage(3)
page['/Contents']
#獲取一個pdfWriter對象
pdf_output = PdfFileWriter()
# 將一個 PageObject 加入到 PdfFileWriter 中
pdf_output.addPage(page)
#把新pdf保存
pdf_output.write(open(r'新pdf路徑','wb'))

          

PythonMagick用于將單頁PDF轉(zhuǎn)化為jpg

百度云-文字識別-python SDK

每天有500次免費的識別
示例代碼如下:

            
#導入baidu-aip
from aip import AipOcr
#https://console.bce.baidu.com/#/index/overview
#產(chǎn)品服務->人工智能->文字識別->創(chuàng)建應用
#獲取以下三個值
APP_ID = '??'
API_KEY = '??'
SECRET_KEY = '?? '
#新建一個AipOcr
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
#讀取本地圖片的函數(shù)
def get_file_content(filePath):
  with open(filePath, 'rb') as fp:
    return fp.read()
#讀取本地圖片
image = get_file_content('p1.jpg')
#可選參數(shù)
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "true"
options["detect_language"] = "true"
options["probability"] = "true"
#通用文字識別
client.basicGeneral(image, options)

#讀取網(wǎng)絡圖片
url = "https://note.youdao.com/yws/public/resource/1577071c1ffa2b6bf4e238ef6dbcfbf5/xmlnote/E5A19BEDFEBA4879B217C5BBF53B0245/22138"
#可選參數(shù)
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "true"
options["detect_language"] = "true"
options["probability"] = "true"
#通用文字識別
client.basicGeneralUrl(url, options)

#讀取本地表格圖片的函數(shù)
def get_file_content(filePath):
  with open(filePath, 'rb') as fp:
    return fp.read()
#讀取本地表格圖片
image = get_file_content('p2.jpg')
#可選參數(shù)
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "true"
options["detect_language"] = "true"
options["probability"] = "true"
#通用文字識別
client.basicGeneral(image, options)
#讀取表格分割效果較差!


          

pdfkit用于利用字符串生成pdf
示例代碼如下:

            
#pdfkit安裝位置設置
path_wk = r'pdfkit安裝位置設置'
pdfkit_config = pdfkit.configuration(wkhtmltopdf = path_wk)
#pdfkit參數(shù)
pdfkit_options = {'encoding': 'UTF-8',}
#制作PDF
pdfkit.from_string(('string'),'D:\test.pdf',configuration=pdfkit_config,options=pdfkit_options)

          

完整代碼如下

            
#導入所需包

#os,操作文件和路徑
import os
#ghostscript,代碼簡化
import ghostscript
#pypdf2,拆分pdf
from PyPDF2 import PdfFileReader, PdfFileWriter
#PythonMagick,單頁PDF轉(zhuǎn)圖片
from PythonMagick import Image
#baidu-aip,百度文字識別
from aip import AipOcr
#pdfkit,字符串制作PDF
import pdfkit

#參數(shù)

path='??'
pdfname='??'
DPI='85'
#https://console.bce.baidu.com/#/index/overview
#產(chǎn)品服務->人工智能->文字識別->創(chuàng)建應用
#獲取以下三個值
APP_ID = '??'
API_KEY = '??'
SECRET_KEY = '?? '
#pdfkit安裝位置設置
path_wk = r'pdfkit安裝位置設置'
pdfkit_config = pdfkit.configuration(wkhtmltopdf = path_wk)
#pdfkit參數(shù)
pdfkit_options = {'encoding': 'UTF-8',}

#PDF轉(zhuǎn)化為圖片

os.chdir(path)
pdf_input = PdfFileReader(open(pdfname, 'rb'))
#自動獲取PDF頁數(shù)
page_count = pdf_input.getNumPages()
page_range=range(page_count)
#也可以手工指定PDF需要轉(zhuǎn)換的頁數(shù)
#page_range=range(0,100)
#使用PyPDF和ghostscript
#==超級好用,超級直觀,超級短==
for page_num in page_range:
  im = Image()
  im.density(DPI)
  im.read(pdfname + '[' + str(page_num) +']')
  im.write(str(page_num)+ '.jpg')

#圖片轉(zhuǎn)化為字符串

#新建一個AipOcr
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
#讀取本地圖片的函數(shù)
def get_file_content(filePath):
  with open(filePath, 'rb') as fp:
    return fp.read()
#可選參數(shù)
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "false"
options["detect_language"] = "false"
options["probability"] = "false"
allteststr=[]
for page_num in page_range:
  #讀取本地圖片
  image = get_file_content(r'%s\%s.jpg' % (path,page_num))
  #通用文字識別,得到的是一個dict
  testjson=client.basicGeneral(image, options)
  teststr=''
  for x in testjson['words_result']:
    teststr=teststr+x['words']+''
  allteststr.append(teststr)

#字符串寫入PDF
for page_num in page_range:
  pdfkit.from_string((allteststr[page_num]),'%s.pdf' % (str(page_num)),configuration=pdfkit_config,options=pdfkit_options)
#合并單頁PDF
pdf_output = PdfFileWriter()
for page_num in page_range:
  os.chdir(path)
  pdf_input = PdfFileReader(open('%s.pdf' % (str(page_num)), 'rb'))
  page = pdf_input.getPage(0)
  pdf_output.addPage(page)
pdf_output.write(open('newpdf.pdf','wb'))


          

以上就是為大家介紹的如何使用python3.6,pypdf2,ghostscript,PythonMagick,百度文字識別服務和pdfkit


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: xnxx 日本19 | 久久国产视频网 | 色欲AV蜜臀AV在线观看麻豆 | 波多野结衣高清在线播放 | 精品一卡2卡三卡四卡二卡 欧美不卡一区二区三区在线观看 | 日本精品在线播放 | 久热免费 | 国产日韩欧美一区 | 欧美一级毛片欧美大尺度一级毛片 | 国产亚洲女人久久久久久 | 涩色婷婷狠狠第四四房社区奇米 | 二级毛片视频 | 精品中文字幕一区 | 亚洲国产一二三 | jizz性欧美2 日本不卡在线 | 欧美性生活视频 | 精品国产青草久久久久福利 | 成年视频网站免费观看 | 色综合久久天天综合绕观看 | 在线视频国产一区 | 好看的91视频| 国产成人精品视频播放 | 大学生a级毛片免费视频 | 免费久久99精品国产婷婷六月 | 26uuu最新地址| 国产一区二区精品丝袜 | 九九香蕉视频 | 夜班护士与医生啪 | www.久久久| 古代级a毛片免费观看 | 免费激情 | 亚洲日本一区二区三区 | 午夜剧院官方 | 国产成人啪精品视频免费网站软件 | 欧美黄一片| 欧美激情图片区 | 亚洲综合一二三区 | 色综合久久综合中文小说 | 色老头xxxwww作爱视频 | 成人一级视频 | 91视频苹果版 |