为幻想团队创建一个刮刀.寻找一种方法将玩家名称列表作为参数传递,然后为player_list中的每个player_name运行解析代码.
我现在有类似的东西
class statsspider(BaseSpider): name = 'statsspider' def __init__ (self, domain=None, player_list=""): self.allowed_domains = ['sports.yahoo.com'] self.start_urls = [ 'http://sports.yahoo.com/nba/players', ] self.player_list= "%s" % player_list def parse(self, response): example code yield request
我假设通过命令行输入一个参数列表与一个参数相同,所以我输入如下内容:
scrapy crawl statsspider -a player_list=['xyz','abc']
问题2!
通过输入逗号分隔的参数列表解决了第一个问题
scrapy crawl statsspider -a player_list="abc def,ghi jkl"
我现在想通过每个"名字"(即'abc def')找到他们姓氏的第一个首字母(在这种情况下是'd').
我用的是代码
array = [] for player_name in self.player_list: array.append(player_name) print array
我最终得到了结果[["'",'a','b','c',......等]为什么python没有为每个'name'分配player_name(例如'abc def'和' ghi jkl')?有人可以向我解释这个逻辑,我可能会理解事后做到这一点的正确方法!