打造一个轻量级企业基本信息采集框架(七)

前言

在前面六篇系列的文章中,我们已经初步搭建了一个企业基本信息采集框架,但是从可配置性以及可视化方面还有很多地方需要去完善。这篇文章我们对schedule.py这个文件做一些整体的修改,使其看上去更加符合我们的平常需求。

正文

我在原有的框架上面,又建立了一个start_crawl.py这个文件来启动全局,主要是想在启动之前做一个更加合理划的配置和判断,下面是具体的实现部分

# -*- coding: utf-8 -*-
from crawl_basicinfo import EpregAppCollect
from schedule import Scheduler
from db_connect import RedisDbConn,DbCollect
import sys
import io
from loguru import logger
from config import *
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding="utf-8")

def main(keywords_list):
    """
    开始运行整个工商采集
    :return:
    """

    count = RedisDbConn().get_count(INIT_STATUS)
    if count == 0:
        if DELETE_REDIS_KEYWORDS and DELETE_REDIS_PARAMS:
            RedisDbConn().del_db(KEYWORDS_REDIS_DB)
            RedisDbConn().del_db(PARAMS_REDIS_DB)
        if SQL_INPUT:
            EpregAppCollect().entry_data()
        else:
            EpregAppCollect().add_keywords(keywords_list)
    else:
        logger.info("源redis库内已经有未采集的keywords.....")
    try:
        s = Scheduler()
        s.run()
    except Exception as e:
        logger.debug("开始采集出现问题--" + str(e.args))
        # main(keywords_list)


if __name__ == '__main__':
    keywords_list = ["天堂","建材"]
    main(keywords_list)

我们在config.py文件内定义了一些字段,需要查看的请到github完整项目去查看github。这边就不过于阐述了,主要是DELETE_REDIS_KEYWORDS和DELETE_REDIS_PARAMS,这两个变量是用来配置采集信息,如果都为true,说明两个信息都要采集,可以自行配置,在下面我们定义了一个keywords_list,以方便我们通过手动的方式输入关键词,进行测试采集,按道理来说,这个脚本会无穷无尽的采集下去。在config中配置了每五分钟从redis内取出数据,这样子就达到了可配置性,后面还有些功能可能需要完善,自己可以自行添加,可能后面还有一期使用sanic进行keywords调度的脚本,敬请期待。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值