|
|
há 2 dias atrás | |
|---|---|---|
| .wolf | há 2 dias atrás | |
| app | há 2 dias atrás | |
| backup | há 6 dias atrás | |
| migrations | há 1 semana atrás | |
| .dockerignore | há 1 semana atrás | |
| .env | há 6 dias atrás | |
| .gitattributes | há 2 semanas atrás | |
| .gitignore | há 1 semana atrás | |
| .python-version | há 1 semana atrás | |
| CLAUDE.md | há 6 dias atrás | |
| DEPLOY.md | há 1 semana atrás | |
| Dockerfile | há 1 semana atrás | |
| README.md | há 2 semanas atrás | |
| create_admin.py | há 1 semana atrás | |
| diagnose_tool_call.py | há 2 dias atrás | |
| docker-compose.dev.yml | há 6 dias atrás | |
| docker-compose.yml | há 6 dias atrás | |
| dump_pg_to_sql.py | há 6 dias atrás | |
| entrypoint.sh | há 2 dias atrás | |
| fix_column.py | há 1 semana atrás | |
| fix_pg_sequences.py | há 2 dias atrás | |
| init_db.py | há 1 semana atrás | |
| migrate.sql | há 1 semana atrás | |
| migrate_add_is_default.py | há 2 dias atrás | |
| migrate_db.py | há 1 semana atrás | |
| migrate_link_to_text.py | há 6 dias atrás | |
| migrate_sqlite_to_pg.py | há 6 dias atrás | |
| pyproject.toml | há 1 semana atrás | |
| requirements-docker-clean.txt | há 1 semana atrás | |
| requirements-docker.txt | há 1 semana atrás | |
| run.py | há 1 semana atrás | |
| test_db.py | há 1 semana atrás | |
| uv.lock | há 1 semana atrás |
这是一个基于 Python Flask 的网络爬虫管理与数据采集系统。支持自定义脚本爬虫和基于配置的通用爬虫,集成了爬虫源管理、任务采集管理等功能。
app/spider/ 目录下)进行采集。克隆项目或下载源码
创建虚拟环境
python -m venv venv
激活虚拟环境
venv\Scripts\activatesource venv/bin/activate安装依赖
pip install -r requirements.txt
首次运行前,需要初始化数据库并创建管理员账号。
python init_db.py
该命令会:
app/app.db SQLite 数据库文件。admin / admin。python run.py
启动后,访问浏览器:http://localhost:5000
使用默认账号 admin,密码 admin 登录。
进入“爬虫源管理”页面,可以查看现有爬虫或点击“新增”。
baidu_news通用配置 (Generic Engine)https://www.baidu.com/s?rtt=1&bsst=1&cl=2&tn=news&rsv_dl=ns_pc&pn=0GETwordSelectors (JSON):
{
"list": ".result-op",
"title": "h3 a",
"link": {"selector": "h3 a", "attr": "href"},
"abstract": ".c-color-text",
"source": ".source-link_Ft1ov .c-color-gray",
"cover": {"selector": ".c-img img", "attr": "src"}
}
ai-LiaoWangweb-app/
├── app/
│ ├── routes/ # 路由模块 (Main, AI, Source, Collection)
│ ├── spider/ # 爬虫核心逻辑
│ │ ├── engine.py # 通用爬虫引擎
│ │ ├── baidusearch.py # 百度搜索专用脚本
│ │ └── config.json # 爬虫配置文件
│ ├── templates/ # HTML 模板
│ ├── static/ # 静态文件 (CSS, JS, ECharts)
│ ├── models.py # 数据库模型
│ ├── __init__.py # 应用工厂
│ └── config.py # 应用配置
├── venv/ # 虚拟环境
├── init_db.py # 数据库初始化脚本
├── run.py # 启动脚本
├── requirements.txt # 项目依赖
└── README.md # 说明文档
添加新的脚本爬虫:
app/spider/ 下创建新的 .py 文件。search(keyword, limit) 函数。.py)。测试:
GenericSpiderEngine 或脚本函数进行测试,参考之前的 test_generic_baidu_news.py (已移除)。Couldn't find a tree builder with the features you requested: lxml,请确保安装了 lxml (pip install lxml)。系统已内置回退机制,如果没有 lxml 会尝试使用 html.parser。