代码结构简介
actions
中的各个类负责解析用户发出的问题、产生 bot 的回复内容。RespGen.py
负责接收一个问题,然后返回回答,它是抽象出来产生回复的接口。从主类 crawler.py
的角度看,它的内部实现并不重要,因人而异,顺手就行。
mySelectors
中的类负责按照一定规则,筛选出来需要进行 actions
的帖子(如需要评论的帖子)。这个职责使它相当适合作为 消费者-生产者模式中的生产者,运行在另外的线程中,最大化减少不必要时间。
util
是一些实用类,对 requests
的包装类,一些杂活如 log
,都可放在这。
confidentials
中包含敏感信息如账号密码、cookies。在 .gitignore
中加入该文件夹来避免它们被上传。
config
中包含读取 confidentials
的实用类。其实可以将 config
作为 util
的一个子 package。
resources
中包含所有非代码的资源,同样排除在 git 上传范围之外。