Я пытаюсь построить элемент из многих функций синтаксического анализа, потому что я получаю данные из нескольких URL-адресов, я пытаюсь перебрать словарь (который я построил, используя 2 для циклов), поэтому я использую 2 для циклов, чтобы получить необходимую переменную для сгенерируйте URL, а затем для каждой переменной я вызываю вторую функцию синтаксического анализа, передавая необходимый URL, именно здесь я хочу вызвать вторую функцию синтаксического анализа из моего основного синтаксического анализа
for r in [1,2]:
for t in [1,2]:
dataName = 'lane'+str(r)+"Player"+str(t)+"Name"
dataHolder = 'lane'+str(r)+"Player"+str(t)
nameP = item[dataName]
print('before parse ==> lane = ' + str(r) + " team = " + str(t))
urlP = 'https://www.leagueofgraphs.com/summoner/euw/'+nameP+'#championsData-soloqueue'
yield Request( urlP, callback=self.parsePlayer , meta={'item': item , "player" : dataHolder} )
Я использую эти prints (), чтобы увидеть в выводе, как мой код выполняет то же самое в моей второй функции синтаксического анализа, которая выглядит следующим образом:
def parsePlayer( self , response ):
item = response.meta['item']
player = response.meta['player']
print('after parse ====> ' + player)
mmr = response.css('.rank .topRankPercentage::text').extract_first().strip().lower()
mmrP = player+"Mmr"
item[mmrP] = mmr
# yield item after the last iteration
(я знаю, что я не объяснил все детали в коде, но я думаю, что нет необходимости видеть мою проблему, не после того, как вы видите, что получают от этих отпечатков)
результат я получаю
ожидаемый результат
также по какой-то причине каждый раз я запускаю spyder я получаю разные случайные порядки отпечатков, это сбивает с толку я думаю, это что-то о yield
я надеюсь, что кто-то может помочь мне с этим