Python 搜索带有混淆字符的文件

Python searching through file with obfuscated characters

做一些挑战,尽量用Python解决(据我所知,不使用Python也可以完成挑战)。 一项与隐写术相关的挑战是在图像中找到文件名和任何扩展名。使用词表进行 Steg 扫描可以解决这个问题,但有人向我提到,如果我将图像作为 word 文件打开,那么实际文本已经是可视的了。

这是真的,但有 500 多行: ��~��b����:ӄ��M��Ɖ�� D�B`�"YOU_GOT_IT_RIGHT!"

我想看看是否有一种方法可以实现 Python 脚本来搜索文件,然后只显示所有英文字符(可能带有“!”,“_”,“{ ","}")

如有任何帮助,我们将不胜感激。

By "all english characters",假设你指的是所有 ASCII 字符;其中包括大写和小写拉丁字母、数字和英文特殊符号:您可以使用 python 内置函数 filter and string.printables 迭代文件内容,如下所示:

    filtered_contents = ''.join(filter(lambda s: s in string.printables, file_contents))

你的问题很笼统,不给你解决问题很难给你答案。有关家庭作业帮助的问题,请参阅 community's on topic guidelines

Questions asking for homework help must include a summary of the work you've done so far to solve the problem, and a description of the difficulty you are having solving it.

如果您对 Python 有一点了解,但在将您的想法组合在一起时遇到问题,我建议您探索 python docs. 每当我遇到困难时,我发现它非常有帮助手头有。如果您想学习 python,我建议您进行 google 搜索。网上有一堆自助学习资源! :)

设法找到解决方案,增加了能够传递任何文件的功能。 感谢您的建议:)

import re
import json
import sys
import argparse

filename = str(sys.argv[1])

with open(filename,"r") as file:
    data = file.read()
    data = ''.join(i for i in data if ord(i)<128)
    print(data)