我计划构建一个应用程序,该应用程序将以深度优先搜索的方式抓取本地文件系统(子树)的一部分,并处理它找到的所有文件,除了一些可配置的异常。
举个例子,假设我有一个这样的目录结构:
> documents
- generic-doc.txt
> mails
- mail-01.txt
- mail-02.txt
- mail-03.txt
> unread
- mail-04.txt
> invoices
> paid
- invoice-01.pdf
- invoice-02.pdf
> unpaid
- invoice-03.pdf
我也有这样的排除规则:
exclude = "documents/mails/unread | documents/invoices"
鉴于这些输入数据,我的应用程序将处理以下文档:
- 通用文档.txt
- mail-01.txt
- mail-02.txt
- mail-03.txt
(例如,它将处理所有文件,除了位于文档/邮件/未读和文档/发票文件夹中的文件)
将来,我可能需要实施各种形式的排除规则。
测试爬取模块实现的最佳方法是什么(例如,当给定排除规则时,模块将返回正确的文档集)?可以在不使用真实文件系统的情况下完成吗?