Я просканировал 37 000 комментариев фанатов и узнал важную информацию об игре.

Python GitHub рептилия прямая трансляция

Это 18-я оригинальная статья о ежедневном изучении Python.

На этот раз я использую сканер Python для сканирования некоторых забавных вещей.

За последние два дня случился финал НБА. Вы точно не пропустите его, если являетесь фанатом. Более того, финал Западной конференции в этом году — это «Рокетс» против «Уорриорз». В этом году «Рокетс» очень сильны, потому что всегда быть тем, кто встанет перед критическим моментом. Конечно, «Уорриорз» тоже достаточно сильны, ведь четверку гигантов, таких как Карри Дюрант, нельзя недооценивать.

Восточный финал я не совсем знал, и всегда думал, что это Селтикс будет тяжело сражаться с Найтом, который знает, что два основных пропавших без вести Селтикс все еще очень сильны, но также играли Найтом 2: 0, похоже, что у Рыцарей шансы, не знаю, у Селтикс не будет удачного реванша, так что посмотрим!

Во время прямой трансляции должны быть комментарии, поэтому я хочу просмотреть комментарии фанатов, чтобы увидеть, о чем они говорят!

Готов к работе

Нужны библиотеки:

запросы: для сетевых запросов

jieba: используется для сегментации слов

wordcloud: сделать карту облака слов

numpy: сделать фоновое изображение

Фоновое изображение облака слов:

Вышеупомянутые библиотеки можно загрузить напрямую с помощью pip, но wordcloud сообщит об ошибке следующим образом:

Нам нужно перейти на официальный сайт, чтобы скачать файл whl для ручной установки

Официальный сайт: https://www.lfd.uci.edu/~gohlke/pythonlibs/

Затем найдите версию Python, которую вы установили, и загрузите ее.

Наконец, установите его из командной строки

pip install “文件路径+whl文件名”

Затем найдите целевую страницу

Прямой текстовый адрес: https://www.zhibo8.cc/zhibo/nba/2018/0517123898.htm?redirect=zhibo

На этой веб-странице через класс захвата (нажмите f12) я знаю, что следующая ссылка предназначена для возврата информации о комментариях, и это json

Ссылка:https://cache.zhibo8.cc/json/2018/nba/0517123898_384.htm?key=0.6512348313080727

Благодаря множественному анализу мы знаем, что информация в комнате прямого эфира выделена сверху жирным шрифтом, а номер страницы комментария после подчеркивания — это количество страниц комментария, последний ключевой параметр — случайное число.

Используйте код для получения информации о комментариях

def __get_json(self, index):
       url = 'https://cache.zhibo8.cc/json/2018/nba/0517123898_%d.htm?key=0.1355540028791382' % index
       response = requests.get(url)
       if response.status_code == 200:
           for item in response.json():
               # 写入文件
               self.__write_file(item['content'])
               self.num += 1
           return 1
       else:
           return 0

Информация о комментарии доступна, затем получите слово облачную карту

def __get_wordcloud(self):
       with open('comments.txt', 'r', encoding='utf-8') as comments:
           text = comments.read()  # 加载数据
           words = ' '.join(jieba.cut(text, cut_all=True))  # 采用结巴全分词模式
           image = np.array(Image.open('1.jpg'))  # 背景图片
           # 初始化词云
           wc = WordCloud(font_path=r'C:\Windows\Fonts\simkai.ttf',
                          background_color='white', mask=image,
                          max_font_size=100, max_words=2000)
           wc.generate(words)  # 生成词云
           wc.to_file('img.png')  # 生成图片
           image_file = Image.open('img.png')  # 打开图片
           image_file.show()

Хорошо, код готов, посмотрите на эффект:

Используя карту облака слов, вы можете с первого взгляда увидеть, что комментируют фанаты, потому что я прополз вторую игру между «Рокетс» и «Уорриорз» дома. «Уорриорз» и «Рокетс» должны быть наиболее обсуждаемыми, за ними следует Дюрант, смерть. Боже. , Дюрант набрал в этой игре 38 очков или проиграл "Рокетс" Естественно, он был самым обсуждаемым. Есть еще Такер, который выстоял в этой игре.Он сделал 5 из 6 трехочковых и побил рекорд плей-офф.Его нормально обсуждать. Еще один очень заметный момент — третья четверть: многие думают, что «Уорриорз» — это «храбрая тройка сумасшедших», думая, что «Уорриорз» вырвутся в третьей четверти этой игры, верно? На самом деле, третья четверть «Рокетс» в этом сезоне тоже очень сильна, не слабее «Уорриорз».

Полный код выложен на мой гитхаб. Вы можете проверить его самостоятельно, если он вам нужен. Если вы считаете, что программа хороша, я надеюсь, что вы можете поставить ей звезду!

гитхаб: https://github.com/SergioJune/gongzhonghao_code

напиши в конце

Если эта статья будет вам полезна, надеюсь, вы не поскупитесь на похвалу! Лайки и ретвиты — самая большая поддержка для меня, так что у меня есть возможность выпускать качественные оригинальные статьи.

«Как фанат? Позвольте мне посмотреть, сколько фанатов»

рекомендуемая статья:

Простое упражнение с поисковым роботом с использованием запросов + BeautifulSoup

Подробное объяснение запросов в общих библиотеках поисковых роботов Python.

Изучайте Python каждый день

Код — это не только баги, но и красота и веселье