为了账号安全,请及时绑定邮箱和手机立即绑定

Python计算PDF文件每页上的每封电子邮件

Python计算PDF文件每页上的每封电子邮件

慕斯709654 2023-12-12 15:08:14
我正在尝试计算这个 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



查看完整回答
反对 回复 2023-12-12
  • 1 回答
  • 0 关注
  • 33 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信