Получить из цикла массив и вывести 10 наиболее повторяющихся значений с количеством

Adre

Новичок
Пользователь
Сен 15, 2020
1
0
1
Здравствуйте.

Я новичок в python. На данный момент пытаюсь получить то, что можно использовать для создания облака тегов. Теги - имена доменов.

Код:
def dev_stats():
     #.group_by(SubPost.link)
    d = SubPost.select(SubPost.link).where(SubPost.link != None)

    for s in d:
       url = urlparse(s.link)
       g = url.netloc
       f = g.split()
       c = Counter(f)
       print(c)

Вывод:

Код:
Counter({'habr.com': 1})
Counter({'evo-rus.com': 1})
Counter({'www.youtube.com': 1})
Counter({'www.youtube.com': 1})
Counter({'www.youtube.com': 1})
Counter({'www.youtube.com': 1})
Counter({'russian.rt.com': 1})

Что-то я совсем запутался. По идеи, необходимо вывести имя домена, например домен.ру (1 раз, уникальное значение), и количество его повторов (для создания размера шрифта) + так, допустим для 10 случаев, разные домены по частоте.
 

alext

Популярный
Пользователь
Май 10, 2020
288
66
28
Для каждого поста for s in d ты вытаскиваешь урл и создаешь для этого единственного урла каунтер. Результат закономерен.
Что такое urlparse и url.netloc я догадываюсь, но не знаю. Телепаты в отпуске.
 
  • Мне нравится
Реакции: Adre

Форум IT Специалистов