我正在嘗試計算這個 1537 頁的 pdf 文件中包含 @twitter 或 @facebook 的每個字符串。我初始化了一個計數器,每當頁面找到 @twitter 或 @facebook 時,該計數器就會關閉,但計數器只是計算頁面數量,而不是包含 facebook 或 twitter 的電子郵件數量。我正在使用 python 3 并導入 pdftotext 來讀取文件。這是代碼import pdftotextcount = 0# 1 read the pdfwith open('Users.pdf', 'rb') as f: pdf = pdftotext.PDF(f)# loop thru pagesfor page in pdf: if '@facebook' in page or '@twitter' in page: count += 1print(count)輸出:1537這是文件的頁數
1 回答

哈士奇WWW
TA貢獻1799條經驗 獲得超6個贊
您應該使用正則表達式匹配來實現您想要做的事情。
import pdftotext
import re
count = 0
# 1 read the pdf
with open('Users.pdf', 'rb') as f:
? ? pdf = pdftotext.PDF(f)
# regex pattern
pattern = '@facebook|@twitter'
# loop thru pages
for page in pdf:
? ? count += len(re.findall(pattern, page))
print(count)
要檢查并嘗試您的正則表達式模式,我推薦Regex101。
添加回答
舉報
0/150
提交
取消