我想打印出"D:\点宽学院"这个文件夹下所有pdf中的中文名词,一个中文名词输出一次,请问python如何实现
时间: 2024-05-05 11:21:23 浏览: 5
可以使用Python中的os、re和PyPDF2库来实现。
首先,需要安装PyPDF2库,可以使用以下命令进行安装:
```python
pip install PyPDF2
```
然后,可以使用以下代码来遍历指定文件夹下的所有pdf文件,并提取其中的中文名词:
```python
import os
import re
import PyPDF2
# 定义正则表达式,用于匹配中文字符
zh_pattern = re.compile(u'[\u4e00-\u9fa5]+')
# 定义要遍历的文件夹路径
folder_path = r'D:\点宽学院'
# 遍历文件夹下的所有文件
for root, dirs, files in os.walk(folder_path):
for file in files:
# 判断文件是否为pdf文件
if file.endswith('.pdf'):
file_path = os.path.join(root, file)
# 打开pdf文件
with open(file_path, 'rb') as f:
pdf_reader = PyPDF2.PdfFileReader(f)
# 遍历pdf文件中的所有页面
for page_num in range(pdf_reader.numPages):
page = pdf_reader.getPage(page_num)
# 提取页面中的文本内容
text = page.extractText()
# 使用正则表达式匹配中文名词,并输出
for match in zh_pattern.findall(text):
print(match)
```
以上代码会遍历指定文件夹下的所有pdf文件,并在每个pdf文件中提取中文名词,并将其输出到控制台中。你可以根据需求修改输出方式,比如将中文名词保存到文件中。