构建整体的私有云服务
构建自动化系统n8n
n8n定时任务,调度,,
这里的爬虫抓取如何处理,
第一种获取到对应下载链接的session和token,通过browserless使用。(可以完成,cookies直接添加,然后调用aria2c,增加状态管理)
通过windows下面的selenium,加载用户目录后使用。关闭自动更新,加载user-dir。(使用老版本默认没有更新。)
- windows 用rpc方式调用吗,接受到数据
mongodb和rpc以后常备,aria2c 和 bt等同。
单次抓取(记录游标)
熟悉n8n
- 使用mongodb,添加流程,幂等,生成成功的下载url和文件,生成失败的url和文件等。
- 数据库写入对应的值,
- 先写在线持续的
kafka 一直监听 ,使用while running
running = True
def basic_consume_loop(consumer, topics):
try:
consumer.subscribe(topics)
while running:
msg = consumer.poll(timeout=1.0)
if msg is None: continue
if msg.error():
if msg.error().code() == KafkaError._PARTITION_EOF:
# End of partition event
sys.stderr.write('%% %s [%d] reached end at offset %d\n' %
(msg.topic(), msg.partition(), msg.offset()))
elif msg.error():
raise KafkaException(msg.error())
else:
msg_process(msg)
finally:
# Close down consumer to commit final offsets.
consumer.close()
def shutdown():
running = False
browserless不知道如何保存状态,可能要用docker的命令行保存状态,还是先用selenium和windows吧。
567验证吗出现故障
好像不是代码问题,然后无限重试了,同时docker的aria2-pro也意外停止了。原因不明确。
Activiti
年初要做一个运维自动化平台,需要用到流程引擎,本来打算项目用golang写的,但是golang的流程引擎功能太简单实在是用不来,最后还是选型java + activiti。到activiti官网一看,嘿出7.0了结果文档是刚写的还不全,我们java还是8的,7.0是匹配的java11,最终是问题太多只好放弃用activiti6.0了。
Python 下面 有 AirFlow。。也是事件流平台,