我目前在尝试适应我的沙哑程序时遇到一些问题。我想做的事情是根据即时消息中的“站点”使不同的解析器起作用。
当前我有这个开始请求
def start_requests(self):
txtfile = open('productosABuscar.txt', 'r')
keywords = txtfile.readlines()
txtfile.close()
for keyword in keywords:
yield Request(self.search_url.format(keyword))
我想找到一种方法,根据我从txt文件中获取的关键字,调用不同的解析器以从页面中提取数据。
有没有办法做到这一点?
答案 0 :(得分:1)
如何根据您在start_requests
中获得的关键字来匹配回调?像这样:
def start_requests(self):
keyword_callback = {
'keyword1': self.parse_keyword1,
'keyword2': self.parse_keyword2,
}
txtfile = open('productosABuscar.txt', 'r')
keywords = txtfile.readlines()
txtfile.close()
for keyword in keywords:
yield Request(self.search_url.format(keyword), callback=keyword_callback[keyword])