今天下午发了一个帖子,发布来了最近写的一个爬虫
果然不负众望,由于渉黄被管理员删除了
学scrapy的时候有几个疑问不明白,请各位指点
1. 函数与函数之间参数传递
# in a paser function
for url, name in zip(album_urls, names):
yield scrapy.Request(url = url, meta = {'start_link': url, 'name': name, 'album': {'name': name}}, callback = self.take_album)
def take_album(self, response):
目前我知道的只有在Request
中通过指定meta
来传递参数了,有没有比这个更好的??
如果有Channel
的话会是怎么样的??
2. 自定义命令行参数
def __init__(self, db_name=None, links=None, *args, **kwargs):
self.start_urls = [links]
self.db_name = db_name
这是我找到字数最少的方法,就不能弄个字典来封装下命令行参数吗
**argv
self.start_urls = [argv['start_urls']]
self.db_name = argv['db_name']
有没有其他办法,是这个接收参数的方法更好看一点??