爬取豆瓣喜剧排行榜的爬虫代码
时间: 2024-11-03 17:08:32 浏览: 26
编写一个爬取豆瓣电影喜剧排行榜的爬虫需要一些步骤和技术,这里我会提供一个基础的Python Scrapy框架的例子。Scrapy是一个强大的Web抓取框架,适合于这类任务。首先,你需要安装Scrapy库:
```bash
pip install scrapy
```
然后创建一个新的Scrapy项目并生成一个新爬虫:
```bash
scrapy startproject doubaochongqi
cd doubaochongqi
scrapy genspider douban_comedy "https://movie.douban.com/top250?cat=1001"
```
接下来,在`douban_comedy.py`文件里,你可以开始编写爬虫代码:
```python
# douban_comedy/spiders/douban_comedy.py
import scrapy
class DoubanComedySpider(scrapy.Spider):
name = 'douban_comedy'
allowed_domains = ['movie.douban.com']
start_urls = ['https://movie.douban.com/top250?cat=1001']
def parse(self, response):
# 使用CSS选择器找到电影列表元素
movie_list = response.css('.item')
for movie in movie_list:
title = movie.css('div.info > div.hd strong::text').get() # 标题
rating = movie.css('.rating_num::text').get() # 评分
link = movie.css('a::attr(href)').get() # 详情链接
yield {
'title': title,
'rating': rating,
'link': 'https://movie.douban.com' + link,
}
# 搜索下一页
next_page = response.css('a.next::attr(href)').get()
if next_page is not None:
yield response.follow(next_page, self.parse)
```
运行爬虫:
```bash
scrapy crawl douban_comedy
```
这将爬取初始页面的喜剧电影信息,并继续追加下一页直到没有更多数据。
阅读全文