07_scrapy的应用——获取电影数据(通过excel保存静态页面scrapy爬虫数据的模板/通过数据库保存)

0、前言:

  • 一般我们自己创建的一些python项目,我们都需要创建虚拟环境,其中会下载很多包,也叫做依赖。但是我们在给他人分享我们的项目时,不能把虚拟环境打包发送给别人,因为每个人电脑系统不同,我们可以把依赖导出为依赖清单,然后别人有了我们的依赖清单,就可以用一条指令把我们的依赖下载到它的项目环境中,这样就能快速运行和部署python项目了
  • 在终端中生成依赖清单的指令:pip freeze > requirements.txt
  • 有了别人的依赖清单,导入别人依赖清单的指令:pip install -r requirements.txt (注意:执行这条指令时,要把别人的依赖清单放到你的项目路径中才行。)
  • 本项目的代码和依赖清单,都会打包一并上传

1、项目概览:

在这里插入图片描述


2、创建项目:

  • 前提项目环境中已经下载了scrapy
  • 在终端执行创建指令:scrapy startproject get_news (注释:get_news是项目名称)
  • 在终端执行切换到项目目录指令:cd get_news
  • 在终端执行在项目中创建爬虫python文件的指令:scrapy genspider 爬虫名称 爬取页面网址

3、代码:

  • 爬虫python文件的代码
# -*- coding: utf-8 -*-
import scrapy
from scrapy import Selector, Request

from ..items import GetNewsItem


class SpiderNewsSpider(scrapy.Spider):
    name = "spider_news"
    allowed_domains = ["movie.douban.com"]
    # start_urls = ['http://movie.douban.com/top250'] # 被下面的start_requests函数替代
    
    # start_requests里面放的是所有要爬取页面的url
    def start_requests(self):
        for i in range(10):
            # scrapy中的Request模块就是发送你要爬取的请求url的,但是请区分它不是第三方库Request
            yield Request(url=f'https://movie.douban.com/top250?start={
     
      
      i * 25}&filter=')

    def parse(self, response):
        # pass
        response_s = Selector(response)
        # 先获取页面电影数据列表
        li_list = response_s.css('#conte

猜你喜欢

转载自blog.csdn.net/sz1125218970/article/details/131176397