码迷,mamicode.com
首页 > 其他好文 > 详细

创建第一个Scrapy项目

时间:2018-07-04 01:06:35      阅读:389      评论:0      收藏:0      [点我收藏+]

标签:处理   字符   cal   write   split   内容   结构   sspi   页面   

d:
进入D盘

scrapy startproject tutorial
建立一个新的Scrapy项目

技术分享图片

 

 

工程的目录结构:

技术分享图片

 


tutorial/
scrapy.cfg # 部署配置文件

tutorial/ # 项目的Python模块,您将从这里导入代码
__init__.py

items.py # 项目项目定义文件

middlewares.py # 项目中间件文件

pipelines.py # 项目管道文件

settings.py # 项目设置文件

spiders/ # 一个目录,你以后会把你的爬虫放进去
__init__.py

 

新建quotes_spider.py:

import scrapy


class QuotesSpider(scrapy.Spider):
# QuotesSpider类继承scrapy.Spider类
name = "quotes"
# 标识蜘蛛。它在项目中必须是唯一的,也就是说,不能为不同的蜘蛛设置相同的名称

def start_requests(self):
# 必须返回Spider将开始抓取的请求的迭代(您可以返回请求列表或编写生成器函数)
# 后续请求将从这些初始请求中连续生成
urls = [
‘http://quotes.toscrape.com/page/1/‘,
‘http://quotes.toscrape.com/page/2/‘,
]
for url in urls:
yield scrapy.Request(url=url, callback=self.parse)

def parse(self, response):
# 将被调用来处理为每个请求下载的响应的方法。
# 响应参数是TextResponse保存页面内容的一个实例,并有更多有用的方法来处理它
# 该parse()方法通常解析响应,将提取的数据提取为字符串,并查找新的URL并Request根据它们创建新的请求
page = response.url.split("/")[-2]
filename = ‘quotes-%s.html‘ % page
with open(filename, ‘wb‘) as f:
f.write(response.body)
self.log(‘Saved file %s‘ % filename)

 

scrapy crawl quotes
运行爬虫

 

技术分享图片

 

已经创建了两个新文件:quotes-1.html和quotes-2.html,以及各个URL的内容,正如我们的parse方法所指示的那样

 

创建第一个Scrapy项目

标签:处理   字符   cal   write   split   内容   结构   sspi   页面   

原文地址:https://www.cnblogs.com/yjlch1016/p/9261158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!