Здравствуйте, ребята, у меня вопрос о том, как я могу найти соответствующие ссылки. Так что я знаю, как найти соответствующие посещения
def csv_readline(line):
"""Given a sting CSV line, return a list of strings."""
for row in csv.reader([line]):
return row
Класс CountTitles (MRJob):
def mapper(self, line_no, line):
"""Extracts the Vroot that was visited"""
cell = csv_readline(line)
if cell[0] == 'V':
yield cell[1], ('V', 1) # yield a tuple
elif cell[0] == 'A':
yield cell[1], ('A', cell[3])
def reducer(self, vroot, visit_counts_and_title):
"""Sumarizes the visit counts by adding them together. Extracts title,
sums visit counts, returns both."""
total = 0
title = ''
for value in visit_counts_and_title:
if value[0] == 'V':
total += value[1]
elif value[0] == 'A':
title = value[1]
yield title, total
если имя == ' main ': CountTitles.run ()
А что если у меня возникнет вопрос, как будто у нас есть CSV-файл с данными типа
line 1-url1,url2
line 2-url1,url3
line 3-url2,url3
line 4-url4,url5
line 5-url2,url4
Так что нам нужно найти тройки URL-адресов (и v, w) такой, что есть ссылка от u до v и ссылка от v до w.
и вывод должен быть таким
url2, url4, url5
url1, url2, url3
url1, url2, url4