"""
scrapy初始Url的两种写法,
一种是常量start_urls,并且需要定义一个方法parse()
另一种是直接定义一个方法:star_requests()
"""
import scrapy
class simpleUrl(scrapy.Spider):
name = "simpleUrl"
start_urls = [ #另外一种写法,无需定义start_requests方法
'http://lab.scrapyd.cn/page/1/',
'http://lab.scrapyd.cn/page/2/',
]
# 另外一种初始链接写法
# 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)
# 如果是简写初始url,此方法名必须为:parse
def parse(self, response):
page = response.url.split("/")[-2]
filename = 'mingyan-%s.html' % page
with open(filename, 'wb') as f:
f.write(response.body)
self.log('保存文件: %s' % filename)转载于:https://www.cnblogs.com/stillstep/p/11099809.html
本文介绍Scrapy爬虫框架中初始URL的两种设置方法,一种是使用start_urls常量配合parse()方法,另一种是直接定义star_requests()方法。通过实例展示了如何使用这两种方法进行网页抓取。
2万+

被折叠的 条评论
为什么被折叠?



