ylib/taskfetch
新增一个类ReliveReq,这是一个行为类. 伪代码如下:
def init(log_mng, reqbhv, a_spider):
# 利用log_mng来存放数据,利用reqbhv来发信息, 利用a_spider来生成任务.
def create_task_dict():
url_list = self.a_spider.get_url_list()
header = self.a_spider.get_header()
task_dict = {'url_list':url_list, 'header': header}
log_mng.save_log( 'page_urls',task_dict )
return task_dict
===============暂时不做===============
def request(self, header, url):
res = self.reqbhv.reqeust(header, url)
self.log_mng.save_log("page_url_status",{"url":url, "header":header, "status":20})
def get_todo_dict(): #根据当前目录中的日志结果决定还需要有哪些任务要完成.
ori_task_dict = log_mng.read_log( 'page_urls')
url_status = log_mng.read_log("page_url_status")
todo_url_dict = self.get_todo_url_list(ori_task_dict , url_status)
return todo_url_dict
def deal_task_dict(task_dict):
header = task_dict['header']
for url in task_dict['url_list']":
self.reqest(header, url)
def do(flag ="create"):
if flag == "create":
task_dict = self.create_task_dict()
else:
task_dict = self.get_todo_dict()
self.deal_task_dict(task_dict)
网友评论