# douban-250 **Repository Path**: kunjs/douban-250 ## Basic Information - **Project Name**: douban-250 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 9 - **Created**: 2025-12-15 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 豆瓣电影Top250爬虫 一个用于爬取豆瓣电影Top250数据的Python爬虫程序,支持数据导出和图片下载。 ## 功能特点 - 爬取豆瓣电影Top250的所有电影信息 - 提取电影名称、评分、评价人数、简介等信息 - 支持下载电影海报图片 - 数据导出为CSV格式 - 完整的日志记录 - 可配置的爬取参数 ## 项目结构 ``` douban-250/ ├── douban_spider/ # 源代码目录 │ ├── __init__.py │ ├── spider.py # 爬虫主程序 │ ├── parser.py # 数据解析模块 │ ├── downloader.py # 图片下载模块 │ └── storage.py # 数据存储模块 ├── data/ # 数据存储目录 │ ├── movies.csv # 电影数据文件 │ └── images/ # 图片存储目录 ├── logs/ # 日志目录 ├── .env # 环境变量配置 ├── requirements.txt # 依赖文件 ├── main.py # 主程序入口 └── README.md # 项目说明 ``` ## 安装与配置 ### 1. 环境要求 - Python 3.10+ - pip ### 2. 安装依赖 ```bash # 激活虚拟环境 source .venv/bin/activate # 安装依赖 pip install -r requirements.txt ``` ### 3. 配置文件 配置文件 `.env` 包含以下可配置项: ``` # 基础配置 BASE_URL=https://movie.douban.com/top250 START_URL=https://movie.douban.com/top250?start=0 # 请求配置 REQUEST_DELAY=1 # 请求间隔(秒) TIMEOUT=10 # 请求超时时间(秒) MAX_RETRIES=3 # 最大重试次数 RESPECT_ROBOTS=true # 是否遵守robots.txt # 输出配置 OUTPUT_DIR=data # 数据输出目录 IMAGES_DIR=data/images # 图片输出目录 CSV_FILE=data/movies.csv # CSV文件路径 LOGS_DIR=logs # 日志目录 # 日志配置 LOG_LEVEL=INFO # 日志级别 ``` ## 使用方法 ### 1. 基本使用 ```bash # 爬取电影数据 python main.py # 爬取电影数据并下载图片 python main.py --download-images ``` ### 2. 命令行参数 - `--download-images`: 下载电影海报图片 - `--stats`: 显示数据统计信息 - `--clear`: 清空现有数据 - `--backup`: 备份现有数据 - `--help`: 显示帮助信息 ### 3. 使用示例 ```bash # 查看帮助 python main.py --help # 爬取数据 python main.py # 爬取数据并下载图片(需要较长时间) python main.py --download-images # 查看数据统计 python main.py --stats # 备份数据 python main.py --backup # 清空数据 python main.py --clear ``` ## 数据字段说明 爬取的电影数据包含以下字段: | 字段 | 说明 | |------|------| | rank | 排名 | | title | 电影名称 | | original_title | 外文名称 | | info | 电影信息(导演、主演、年份、国家、类型) | | rating | 星级评分 | | votes | 评价人数 | | votes_numeric | 评价人数(数字) | | quote | 一句话介绍 | | link | 电影链接 | | image_url | 图片URL | ## 注意事项 1. 请合理使用爬虫,遵守网站的robots.txt规则 2. 程序已设置请求延迟,避免对服务器造成过大压力 3. 图片下载可能需要较长时间,建议分批进行 4. 如遇到网络问题,程序会自动重试 ## 开发说明 ### 模块说明 - **spider.py**: 爬虫主程序,负责页面请求和整体流程控制 - **parser.py**: 数据解析模块,使用BeautifulSoup解析HTML - **downloader.py**: 图片下载模块,支持批量下载和重试机制 - **storage.py**: 数据存储模块,支持CSV和Excel格式导出 ### 扩展开发 如需扩展功能,可以: 1. 修改 `parser.py` 中的解析逻辑以适应页面结构变化 2. 在 `storage.py` 中添加更多数据导出格式 3. 在 `downloader.py` 中添加更多图片处理功能 ## 许可证 本项目仅供学习和研究使用,请勿用于商业用途。