objected knowledge base implement for email code structure
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
from aios_kernel.knowledge import KnowledgeBase, EmailObject
|
||||
|
||||
# define a email converter class
|
||||
|
||||
class EmailConverter:
|
||||
# define init method
|
||||
def __init__(self, local_dir, knowledge_base: KnowledgeBase) -> None:
|
||||
pass
|
||||
|
||||
async def run(self):
|
||||
# convert the email to knowledge object
|
||||
for email_dir in self._next():
|
||||
# convert the email to knowledge object
|
||||
knowledge_object = self._convert(email_dir)
|
||||
# insert the knowledge object to knowledge base
|
||||
await self.knowledge_base.insert(knowledge_object)
|
||||
|
||||
def _next(self) -> str:
|
||||
pass
|
||||
|
||||
def _convert(self, email_dir) -> EmailObject:
|
||||
pass
|
||||
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
import asyncio
|
||||
from .spider import EmailSpider, EmailConverter
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
spider = EmailSpider("smtp.163.com","user","pwd","./email")
|
||||
asyncio.run(spider.run())
|
||||
|
||||
converter = EmailConverter("./email",KnowledgeBase())
|
||||
asyncio.run(converter.run())
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# define a email spider class
|
||||
|
||||
class EmailSpider:
|
||||
def __init__(self, address, account, pwd, local_dir) -> None:
|
||||
pass
|
||||
|
||||
async def run(self):
|
||||
# spide the email from the email server
|
||||
for email_link in self._next():
|
||||
# save the email to local directory
|
||||
self._save(email_link)
|
||||
|
||||
def _next(self):
|
||||
pass
|
||||
|
||||
def _save(self, email_link) -> str:
|
||||
pass
|
||||
Reference in New Issue
Block a user