scrapy框架下第一只爬虫!

学习素材

整合学习的fishc.com知识,加巩固学习,不作其他目的!新手上路,前辈指教
今天学习了scrapy框架编写第一只爬虫,爬取的url:http://www.dmoztools.net/是一个分类目录网址
_________________________________________________________________________________________________分割线网页截图
目的:希望把标题、超链接、描述都保存到一个文件中

正文

1、新建一个爬虫

打开cmd,切换目录到桌面:cd Desktop(默认为你的用户名所在地,C://user,使用cd /d D:// 路径 切换到具体文件夹)
新建爬虫scrapy startproject tutorial
(新建爬虫的另一种方法:)
桌面出现了tutorial的文件夹,里面的文件有截图
spider是从网页爬取数据的类

2、编辑items

items的作用是存储爬取数据的容器,它就是类似于字典,定义一个item的方法很简单,只要继承scrapy.item类,并将所有字段定义为scrapy.Field()即可。

class TutorialItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    title = scrapy.Field()
    link = scrapy.Field()
    desc = scrapy.Field()

3.编写spider

截图
在spiders中新建一个爬虫,命名dmoz_spider.py,代码如下

import scrapy

class DmozSpider(scrapy.Scrapy):
	name = "dmoz"
	allow_domains = "dmoztools.net"
	start_urls = [
	'http://www.dmoztools.net/Computers/Programming/Languages/Python/Books/',
	'http://www.dmoztools.net/Computers/Programming/Languages/Python/Resources/'
	]
	
	def parse(self,response):
		filename = response.url.split('/')[-2]
		with open(filename,'wb') as f:
			f.write(response.body)
		

为验证爬取过程,先将其打印出来
注意:
(1)每个爬虫的name是惟一的,就是后面cmd中的调用名
(2)domain指的是爬虫的爬取范围
(3)列表中有一个逗号

4、test

进入cmd,

标题

标题

标题

猜你喜欢

转载自blog.csdn.net/qq_43680223/article/details/85958956