仿scrapy的爬蟲框架 (python3.5以上模塊化,需要支持async/await語法)

不知道是不是代碼過多導致的,如果把代碼放進code標籤內提交以後直接進入500頁面,所以就不貼代碼了

傳送門:https://github.com/zjl1110/WebCrawler

目錄結構:

WebCrawler
    |----common(通用模塊)
        |----__init__.py
        |----email_manager.py(郵件管理)
        |----error_code.py(錯誤碼管理)
        |----html_manager.py(html頁面的redis管理)
        |----item_manager.py(模仿scrapy的Field等類)
        |----log_manager.py(日誌管理)
        |----random_headers.py(headers管理)
        |----redis_manager.py(redis管理)
        |----request_common.py(request通用函數)
        |----request_manager.py(request管理和response管理)
        |----url_manager.py(url的redis管理)
    |----spiders(爬蟲實現)
        |----__init__.py
        |----xxx.py(爬蟲例子)
    |----items.py(模仿scrapy的items)
    |----pipelines.py(模仿scrapy的Pipeline)
    |----run.py(入口函數)
    |----setting.py(配置文件)


python版本3.5或者以上(不然不支持async/await語法)
需要安裝mongodb,redis
需要的第三方庫
redis
aiohttp
lxml

pymongo



只需要在spiders下寫爬蟲,有點類似scrapy,因爲格式是照着scrapy的格式仿寫的
按照spiders下的例子仿寫就可以瞭解大致用法



基本熟悉寫法以後就可以專注寫爬蟲,周邊模塊已經寫得差不多,利用redis模塊也可以擴展成簡單的分佈式,因爲只花了兩天寫的,還會碰到一些問題,可以交流,我在工作中碰到問題也會及時修改這裏的代碼,讓代碼的適應性更強一點,應用更廣泛


這個算是一個爬蟲框架嗎?????





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章