命令启动spider

image.png
crawl命令
启动spider爬虫

  1. scrapy crawl 爬虫名

注意:这个爬虫的名是在初始化项目的时候定义的

脚本启动spider

脚本启动要比命令启动方便,因为脚本启动就归pycharm管理,更方便我们进行调试

  1. from scrapy.cmdline import execute
  2. import sys
  3. import os
  4. sys.path.append(os.path.dirname(__file__))
  5. execute(["scrapy","crawl","jobbole"])
  6. # _file_ 函数会返回当前python文件的绝对路径
  7. # os.path.dirname() 函数返回当前文件所在目录的绝对路径

注意:在有的python版本中,file函数可能不返回当前文件的绝对路径,而是返回文件名,最保险的方式是用os.path.abspath(__file__)来替代file

debug试试

debug一下脚本看看这个程序大概发生了什么?
目标页面的源码被scrapy下载下来了,并且保存在response参数中。

  1. import scrapy
  2. class BlogspiderSpider(scrapy.Spider):
  3. name = 'blogSpider'
  4. allowed_domains = ['news.cnblogs.com']
  5. start_urls = ['http://news.cnblogs.com/']
  6. def parse(self, response):
  7. pass

image.png
image.png