diff --git a/README.md b/README.md index 630a865..81d489d 100644 --- a/README.md +++ b/README.md @@ -2,39 +2,50 @@ Freebuf.com : 简化版线程池爬虫。a threadpool scraper from freebuf 使用说明: -class Scraper: - def __init__(self, single_page = True, workers_num = 8, worker_class): - single_page:当前爬虫模式是单页面还是多页面 - workers_num:当前多页面爬虫线程数 - worker_class:当前爬虫实际工作处理页面的类(可以自定义) - - def get_result_elements_queue(self): - 返回值:Queue.Queue - 调用该方法返回一个队列,该队列存储自定义结果 - def get_result_urls_queue(self): - 返回值:Queue.Queue - 调用该方法返回一个队列,该队列存储默认结果 - - def kill_woker(self): - 结束所有进程 - - def feed(self, target_urls): - target_urls是你希望爬虫处理的url - 可以多次feed,可以传入一个字符串形式的url也可以传入一个list,list包含多个str形式的url - -class ScraperWorkerBase: +``` +class Scraper(objexct): + def __init__(self, single_page = True, workers_num = 8, worker_class): + """ + single_page:当前爬虫模式是单页面还是多页面 + workers_num:当前多页面爬虫线程数 + worker_class:当前爬虫实际工作处理页面的类(可以自定义) + """ + def get_result_elements_queue(self): + """ + 返回值:Queue.Queue + 调用该方法返回一个队列,该队列存储自定义结果 + """ + def get_result_urls_queue(self): + """ + 返回值:Queue.Queue + 调用该方法返回一个队列,该队列存储默认结果 + """ + def kill_woker(self): + """ + 结束所有进程 + """ + def feed(self, target_urls): + """ + target_urls是你希望爬虫处理的url + 可以多次feed,可以传入一个字符串形式的url也可以传入一个list,list包含多个str形式的url + """ +class ScraperWorkerBase(object): 用户需求比较低时,基本默认的该类就可以满足要求,但是如果需求需要定制,请复写该类,并将类作为参数传入worker_class - def parse_page(self) - 通过继承并复写这个方法来自定义处理页面, - self.soup是该页面的bs4的soup对象,同样,大家可以修改源代码让它支持更多的类型解析 - - def __get_html_data(self) - 通过继承复写该函数可以修改认证过程,使用特定需要。 - + def parse_page(self) + """ + 通过继承并复写这个方法来自定义处理页面, + self.soup是该页面的bs4的soup对象,同样,大家可以修改源代码让它支持更多的类型解析 + """ + def __get_html_data(self) + """ + 通过继承复写该函数可以修改认证过程,使用特定需要。 + """" +``` 使用实例: 一: - + +``` #encoding:utf-8 from scraper import * import Queue @@ -52,9 +63,10 @@ while True: print z.get(timeout=4) except: pass - +``` 二: - + +``` #encoding:utf-8 from scraper import * import Queue @@ -85,5 +97,5 @@ while True: except: pass - +```