__init__.py 629 B

12345678910111213141516171819202122
  1. import threading
  2. from crawler.spiders import SyncData, SearchEngine, VisitDomain
  3. class BreadthCrawler:
  4. def __init__(self, engines=None, visit_workers=1, **kwargs):
  5. SyncData(**kwargs)
  6. self._engines = SearchEngine(**kwargs)
  7. self._engines.set_engines(engines)
  8. self._excavator = VisitDomain(visit_workers=visit_workers, **kwargs)
  9. def start(self):
  10. threading.Thread(
  11. target=self._engines.start,
  12. name='MainSearchEngine'
  13. ).start()
  14. threading.Thread(
  15. target=self._excavator.start,
  16. name='MainSearchVisit'
  17. ).start()