python scrapy top250
时间: 2023-11-03 13:59:26 浏览: 80
以下是使用 Python Scrapy 爬取豆瓣电影 Top 250 的示例代码:
1. 创建项目和爬虫
在命令行中输入以下命令,创建一个名为 `douban_movie` 的 Scrapy 项目:
```
scrapy startproject douban_movie
```
进入项目目录,创建一个名为 `top250` 的爬虫:
```
cd douban_movie
scrapy genspider top250 movie.douban.com/top250
```
2. 编写爬虫代码
打开 `douban_movie/spiders/top250.py` 文件,将以下代码复制进去:
```python
import scrapy
class Top250Spider(scrapy.Spider):
name = 'top250'
allowed_domains = ['movie.douban.com']
start_urls = ['https://movie.douban.com/top250']
def parse(self, response):
for movie in response.css('.item'):
yield {
'title': movie.css('.title::text').get(),
'rating': movie.css('.rating_num::text').get(),
'link': movie.css('.hd a::attr(href)').get()
}
next_page = response.css('.next a::attr(href)').get()
if next_page is not None:
yield response.follow(next_page, self.parse)
```
这个爬虫会爬取豆瓣电影 Top 250 页面中的电影标题、评分和链接,然后自动跟随下一页链接继续爬取。
3. 运行爬虫
在命令行中进入项目目录,输入以下命令运行爬虫:
```
scrapy crawl top250 -o top250.csv
```
这个命令会启动爬虫并将结果保存到 `top250.csv` 文件中。你可以使用 Excel 或其他工具打开这个文件查看爬取结果。
注意:由于豆瓣网站的反爬虫机制,可能需要设置一些爬虫参数(如 User-Agent 和 Cookies)才能成功爬取数据。如果你遇到了问题,请参考 Scrapy 的文档或在社区寻求帮助。
阅读全文