Skip to content

yongyuwang123/douban-movie-crawler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Version License Status

豆瓣电影Top250爬虫

一个高效、稳定的豆瓣电影Top250爬虫工具,支持多页爬取和数据统计。

✨ 功能特点

  • 多页爬取:支持爬取1-10页数据(每页25部电影)
  • 完整字段:提取15个字段信息,包括评分、评价人数、导演、主演等
  • 智能防封:随机延迟请求,避免被封IP
  • 数据统计:自动生成评分统计、热门年份等分析
  • CSV导出:数据保存为CSV格式,便于后续分析
  • 错误处理:完善的异常处理和重试机制

📊 数据字段

字段 说明 示例
排名 电影在Top250中的排名 1
页码 所在页码 1
本页序号 在当页的序号 1
中文标题 电影中文名 肖申克的救赎
外文标题 电影外文名 The Shawshank Redemption
评分 豆瓣评分 9.7
评价人数 参与评价人数 3249957人评价
引言 电影短评 希望让人自由。
导演 电影导演 弗兰克·德拉邦特 Frank Darabont
主演 主要演员 蒂姆·罗宾斯 Tim Robbins /...
年份 上映年份 1994
国家 制片国家 美国
类型 电影类型 犯罪 剧情
电影链接 豆瓣电影链接 https://movie.douban.com/subject/1292052/
图片链接 海报图片链接 https://img9.doubanio.com/view/photo/s_ratio_poster/public/p480747492.jpg

🚀 快速开始

安装依赖

pip install -r requirements.txt

运行爬虫

cd src
python crawler.py

使用示例

from crawler import DoubanMovieCrawler

# 创建爬虫实例
crawler = DoubanMovieCrawler()

# 爬取3页数据
movies = crawler.crawl(pages=3)

# 保存数据
crawler.save_to_csv('movies.csv')

# 显示统计信息
crawler.show_statistics()

🔧 配置选项

参数 说明 默认值
max_pages 最大爬取页数 10
delay 页间延迟时间(秒) 2.0
crawler = DoubanMovieCrawler(max_pages=5)
movies = crawler.crawl(pages=3, delay=1.5)

📈 数据统计

爬虫自动生成以下统计信息:

  • 📊 评分统计:最高分、平均分、最低分
  • 📅 年份分布:热门上映年份
  • 👥 人气排名:评价人数最多的电影
  • 🏆 高分电影:评分前10的电影

📸 项目演示

运行界面

程序提供了友好的交互界面和进度显示: 运行界面

数据输出

爬取的数据自动保存为CSV格式: CSV数据

⚠️ 注意事项

  1. 频率控制:请合理设置延迟时间,避免对豆瓣服务器造成压力
  2. 遵守规则:尊重网站的robots.txt协议
  3. 学习目的:本项目仅用于学习和技术交流
  4. 数据版权:爬取的数据版权归豆瓣所有

🐛 调试记录

遇到问题?查看调试过程文档了解如何解决常见问题。

📄 开源协议

本项目采用 MIT 协议开源。

🤝 贡献指南

欢迎提交 Issue 和 Pull Request!

  1. Fork 本项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

About

A robust web crawler for Douban Top 250 movies with multi-page support and data analysis

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages