ReiltasGG/apartment-hunter
GitHub: ReiltasGG/apartment-hunter
一个基于终端和本地 AI 模型的租房筛选工具,通过自动抓取和智能评分帮助用户快速找到符合预算与设施需求的理想公寓。
Stars: 0 | Forks: 0
# 🏠 公寓猎手 CLI
一个基于终端的公寓猎手,由 **Ollama + Gemma 4** 驱动。它会抓取 Craigslist 上的房源信息,使用本地 AI 模型根据你的设施需求和预算进行排名,并输出一份排版整洁的 **PDF 报告**,展示匹配度最高的 3 个房源。
## 前置条件
- Python 3.11+
- 已安装并运行 [Ollama](https://ollama.com)
- 已在 Ollama 中拉取 Gemma 4 模型
## 设置
### 1. 克隆仓库
```
git clone https://github.com/ReiltasGG/apartment-hunter.git
cd apartment-hunter
```
### 2. 创建并激活虚拟环境
```
python3 -m venv venv
source venv/bin/activate
```
### 3. 安装依赖
```
pip install -r requirements.txt
```
### 4. 在 Ollama 中拉取模型(仅需一次)
```
ollama pull gemma4:e4b
```
### 5. 在另一个单独的终端中启动 Ollama
```
ollama serve
```
## 使用说明
只需运行脚本——它会向你询问所有必要的信息:
```
python apartment_hunter.py
```
系统会提示你输入以下信息:
- **城市 (City)** — Craigslist 的城市子域名(例如 `houston`、`austin`、`dallas`)
- **最低预算 (Min budget)** — 可选的最低租金
- **最高预算 (Max budget)** — 每月最高租金(严格执行)
- **卧室数量 (Bedrooms)** — 可选的卧室数量过滤器
- **设施需求 (Amenities)** — 你想要的设施列表,以逗号分隔(例如 `gym, parking, in-unit laundry, pet friendly`)
## 输出
脚本将会:
1. 显示抓取数据和查询 AI 时的实时进度
2. 直接在终端中打印出排名前 3 的结果
3. 保存一份 **PDF 报告**,其中包含:
- 租金、位置以及该房源的链接
- ✅ 已有的设施 / ❌ 缺失的设施
- 周边环境(餐厅、交通、公园等)
- AI 总结的推荐理由
- 满分为 100 的匹配得分
## 返回项目
```
cd apartment-hunter
source venv/bin/activate
python apartment_hunter.py
```
## 故障排除
| 问题 | 解决方案 |
|---------|-----|
| `Cannot connect to Ollama` | 在另一个终端中运行 `ollama serve` |
| `No listings found` | 尝试放宽价格范围或检查城市名称拼写 |
| `JSON parse error` | 原始 Ollama 输出已保存至 `ollama_raw.txt` 以供调试 |
| 结果超出预算 | 预算现已在 AI 排名前后进行强制硬过滤 |
标签:AI风险缓解, PDF生成, Python, 代码示例, 数据分析, 文档结构分析, 无后门, 本地大模型, 逆向工具