加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

大数据开发神器——scrapy spider爬虫框架,编写你的第一个爬虫

发布时间:2022-12-06 13:35:41 所属栏目:大数据 来源:互联网
导读: HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'
这几行注释的作用是Scrapy会缓存你有的Requests!当你再次请求时,如果存在缓存文档则返回缓存文档,而不是去网

HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage'

这几行注释的作用是Scrapy会缓存你有的Requests!当你再次请求时,如果存在缓存文档则返回缓存文档,而不是去网站请求,这样既加快了本地调试速度,也减轻了 网站的压力

第三:定义Items

根据我们需要爬取的需要,定义我们需要的Items,我们以爬取此URL为例(一个小说网站),打开此网站,我们可以看到上面有小说的名字,作者,字数,状态等大数据爬虫,本次就先爬虫这一个界面的所有小说的名字为例

打开Items 输入如下:

import scrapy

class PowersItem(scrapy.Item):

novelname = scrapy.Field()#小说名字

pass

以上就是scrapy的基本设置(后续会添加其他的设置,我们后续讨论)

第四:编写spider

打开我们先前建立的py爬虫powers415.py

import scrapy

from bs4 import BeautifulSoup #(解析request来的网页)

from scrapy.http import Request #(request请求)

from myproject.items import PowersItem

#以上是插入scrapy以及其他使用到的第三方库

###########

class PowersSpider(scrapy.Spider):

name = "powers" #爬虫的名字,必须添加爬虫的名字,这个很重要

first_url='http://www.23us.so/full.html' #定义第一个URL

def start_requests(self):

yield Request(self.first_url,self.parse)#返回调度器处理好的request

#spider处理获取的数据,得到Items

def parse(self, response): #必须有parse函数

tds = BeautifulSoup(response.text, 'lxml').find_all('tr', bgcolor='#FFFFFF')#解析

item = PowersItem() #item初始化

for td in tds:

novelname = td.find('a').get_text()#获取小说名字

item['novelname'] =novelname #获取到Items

print(item)

pass

python爬虫数据书籍_爬虫大数据_大数据爬虫

爬取的数据

下期预告:

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!