{% extends "base.html" %} {% block title %}站点登录 — News Harvester{% endblock %} {% block extra_head %} {% if test_state and test_state.values() | selectattr('running') | list %} {% endif %} {% endblock %} {% block content %}

站点登录

按站点维护凭据:站点 = 源名第一段,同一账号的多个频道共享一份凭据与配方 (如 nikkei 一份凭据覆盖 nikkei-world / nikkei-markets / nikkei-tech 全部频道)。 保存后以 600 权限落盘(etc/news-harvester/logins/),密码不再回显; 每个频道采集前自动预检,未登录会自动登录。配方在技能仓 logins/ 下维护(同样按站点)。

{% with messages = get_flashed_messages() %} {% if messages %}{% for m in messages %}
{{ m }}
{% endfor %}{% endif %} {% endwith %}
{% for r in rows %} {% set st = test_state.get(r.site) %} {% endfor %}
站点登录账号首页覆盖频道凭据自动登录配方上次测试操作
{{ r.site }} {{ r.user or '—' }} {{ r.url or '—' }} {% if r.sources %} {% for s in r.sources %}{{ s }}{% endfor %} {% else %} 未接入源(配方与凭据先行,装源后直接生效) {% endif %} {% if r.configured %}已配置 {% else %}未配置{% endif %} {% if r.has_recipe %}支持 {% else %}无配方(配置凭据后点右侧按钮自动生成){% endif %} {% if st and st.running %} 测试中…(启动于 {{ st.start }}) {% elif st and st.done %} {% if '已登录' in st.output or '登录成功' in st.output %} 通过 {% else %} 失败 {% endif %}
输出
{{ st.output }}
{% else %} — {% endif %}
{% if r.has_recipe %}
{% elif r.configured %}
{% endif %} {% if r.configured %}
{% endif %}

{{ '编辑站点凭据' if edit_hint else '添加 / 更新站点凭据' }}

{% endblock %}