python Scrapy框架2—简单的数据抓取
·
python Scrapy框架2—数据抓取
spider中的流程

spider数据抓取
在scrapy框架中,我们通过命令
scrapy crawl itcast
去执行spiders中的python脚本。
这里的itcast 是name中的内容

两种初始化url的方法
1、常量start_urls,并且需要定义一个方法parse()
start_urls = [ #另外一种写法,无需定义start_requests方法
'http://lab.scrapyd.cn/page/1/',
'http://lab.scrapyd.cn/page/2/',
]
2、直接定义一个方法:star_requests()
def start_requests(self):
urls = [ #爬取的链接由此方法通过下面链接爬取页面
'http://lab.scrapyd.cn/page/1/',
'http://lab.scrapyd.cn/page/2/',
]
for url in urls:
yield scrapy.Request(url=url, callback=self.parse)
处理数据
def parse(self, response):
self.log(response.url)
page = response.url.split("/")[-2]
#根据上面的链接提取分页,如:/page/1/,提取到的就是:1
filename = 'mingyan-%s.html' % page
#拼接文件名,如果是第一页,最终文件名便是:mingyan-1.html
with open(filename, 'wb') as f:
#python文件操作,不多说了;
f.write(response.body)
#刚才下载的页面去哪里了?response.body就代表了刚才下载的页面!
self.log('保存文件: %s' % filename) # 打个日志
这里的response就是请求到的数据
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)