设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【每日一坑 6】 查找文件内容

[复制链接]

3

主题

1

好友

111

积分

注册会员

Rank: 2

楼主
发表于 2021-2-13 19:24:08 |显示全部楼层
老师好,能看看嘛?望得到您的建议。

这个程序有些问题。比如我在文件夹中加上一个Word文件,它就会报错。大概是这样:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x82 in position 89: illegal multibyte sequence
老师能解释一下和提供个解决方法吗?谢谢啦!
  1. import os

  2. text = input('输入要检索的内容:\n')
  3. way = input('输入要检索的文件夹位置:\n')
  4. result = []

  5. for root, dirs, files in os.walk(way):
  6.     for f in files:
  7.         file_con = open(root + '\\' + f,encoding = 'utf-8').read()
  8.         if text in file_con:
  9.             result.append(f)
  10. print(result)
复制代码
回复

使用道具 举报

3

主题

1

好友

111

积分

注册会员

Rank: 2

沙发
发表于 2021-2-13 21:05:37 |显示全部楼层
crossin先生 发表于 2021-2-13 20:14
word无法直接当做文本读写,可以通过异常处理来跳过。或者要用 python-docx库打开 ...

老师,我还有些问题。

报错UnicodeDecodeError的原因就是文件夹里的Word无法直接读是吗?
如果是,那如果文件夹里还有Excel,PPT之类,也要把那些库一个一个下载来用是吗?应该怎么办?
回复

使用道具 举报

3

主题

1

好友

111

积分

注册会员

Rank: 2

板凳
发表于 2021-2-17 11:05:54 |显示全部楼层
crossin先生 发表于 2021-2-16 22:33
看你具体什么需求,如果是需要检索的话,那确实是要的

作为这个练习来说,能做到检索txt内容和其他文件 ...

好的,谢谢老师
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-4 07:34 , Processed in 0.018244 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部