中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么解決pyPdf和pyPdf2在合并pdf時出現的錯誤

發布時間:2021-03-11 16:52:43 來源:億速云 閱讀:479 作者:TREX 欄目:開發技術

本篇內容介紹了“怎么解決pyPdf和pyPdf2在合并pdf時出現的錯誤”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

當一個pdf文件有多page的時候,它將出來見你!

方法是取直接修改那個文件generic.py

(1) pyPdf

路徑大約在這里:

/usr/lib/python2.7/site-packages/pyPdf/generic.py

if data.has_key(key):
  # multiple definitions of key not permitted
  raise utils.PdfReadError, "multiple definitions in dictionary"
data[key] = value

大約在532--536行

將它修改為:

if not data.get(key):
 
 data[key] = value

(2)pyPdf2

路徑大約在:

/usr/lib/python2.7/site-packages/PyPDF2/generic.py

if not data.get(key):
  data[key] = value
elif pdf.strict:
  # multiple definitions of key not permitted
  raise utils.PdfReadError("Multiple definitions in dictionary at byte %s for key %s" \
           % (utils.hexStr(stream.tell()), key))

修改為:

if not data.get(key):
  data[key] = value

補充知識:在Python里如何切分中文文本句子(分句)、英文文本分句(切分句子)

在處理文本時,會遇到需要將文本以 句子 為單位進行切分(分句)的場景,而文本又可以分為 中文文本 和 英文文本 ,處理的方法會略有不同。本文會介紹 Python 是如何處理 分句 的。

分句的關鍵是找到合適的結束符號,比如:中文里的 。,英文里的 . 等,而且,在這一點上中英也是有很大區分的。

這里介紹一種純用 Python 實現的分句函數。

def cut_sentences(content):
	# 結束符號,包含中文和英文的
	end_flag = ['?', '!', '.', '?', '!', '。', '…']
	
	content_len = len(content)
	sentences = []
	tmp_char = ''
	for idx, char in enumerate(content):
		# 拼接字符
		tmp_char += char

		# 判斷是否已經到了最后一位
		if (idx + 1) == content_len:
			sentences.append(tmp_char)
			break
			
		# 判斷此字符是否為結束符號
		if char in end_flag:
			# 再判斷下一個字符是否為結束符號,如果不是結束符號,則切分句子
			next_idx = idx + 1
			if not content[next_idx] in end_flag:
				sentences.append(tmp_char)
				tmp_char = ''
				
	return sentences

content = '在處理文本時,會遇到需要將文本以 句子 為單位進行切分(分句)的場景,而文本又可以分為 中文文本 和 英文文本 ,處理的方法會略有不同。本文會介紹 Python 是如何處理 分句 的。'
sentences = cut_sentences(content)
print('\n\n'.join(sentences))

在處理文本時,會遇到需要將文本以 句子 為單位進行切分(分句)的場景,而文本又可以分為 中文文本 和 英文文本 ,處理的方法會略有不同。

本文會介紹 Python 是如何處理 分句 的。

這個函數可以通過修改 end_flag (結束符號),來自定義特定的句子切分方式,比如加入 ; 等符號。

當然,也可以用正則表達式來完成分句,使用 re.split 的方法。

import re

def cut_sentences(content):
	sentences = re.split(r'(\.|\!|\?|。|!|?|\.{6})', content)
	return sentences

content = content = '在處理文本時,會遇到需要將文本以 句子 為單位進行切分(分句)的場景,而文本又可以分為 中文文本 和 英文文本 ,處理的方法會略有不同。本文會介紹 Python 是如何處理 分句 的。'
sentences = cut_sentences(content)
print('\n\n'.join(sentences))

在處理文本時,會遇到需要將文本以 句子 為單位進行切分(分句)的場景,而文本又可以分為 中文文本 和 英文文本 ,處理的方法會略有不同

。

本文會介紹 Python 是如何處理 分句 的

。

這里還可以安利大家一個非常不錯的處理中文標點符號的第三庫: zhon,可以通過 pip install zhon 安裝,功能也算非常豐富。

我們使用 zhon 來實現中文分句。

import re
import zhon

rst = re.findall(zhon.hanzi.sentence, '我買了一輛車。媽媽做的菜,很好吃!')
print(rst)

['我買了一輛車。', '媽媽做的菜,很好吃!']

大家可以閱讀 zhon 的官方文檔,了解更多的使用案例。

“怎么解決pyPdf和pyPdf2在合并pdf時出現的錯誤”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开原市| 娱乐| 桦南县| 乌苏市| 平顶山市| 大渡口区| 通化县| 印江| 安仁县| 晋城| 宁南县| 株洲市| 满城县| 玉林市| 馆陶县| 鄢陵县| 清徐县| 祥云县| 阿拉善盟| 昭觉县| 竹北市| 巴彦县| 上犹县| 宁明县| 雷波县| 南阳市| 凤凰县| 武城县| 苏尼特右旗| 柳林县| 吉木萨尔县| 平顺县| 长顺县| 石首市| 竹北市| 芒康县| 舟山市| 思茅市| 孝义市| 分宜县| 金塔县|