python小练习之爬鱿鱼游戏的评价生成词云

目录
  • 前言
  • 分析页面
  • 重要代码
    • selenium打开豆瓣短评页面
    • 根据xpath来获取评论内容
    • 实现跳转下一页
    • 完整代码
  • 成果

前言

鱿鱼游戏是什么,相信大家都不陌生了,虽然说博主没看过这部剧,但是还是对豆瓣的评论有点好奇,刚刚好近期学习了selenium,就当练练手了,来吧来吧,爬爬爬。

分析页面

还是老样子,兄弟们先打开我们最喜欢的google浏览器,点击F12,开启爬虫快乐模式
来到页面,如下图步骤,逐个点击

然后我们就发现这个页面确实很简单,每一条评论就是包在了class为short的span标签内,那就可以开始写xpath了,如下图

这样一页的评论就拿到了,接下来就是换页了
有一个小技巧,不需要我们自己写xpath,直接用google浏览器可以生成xpath,如下图所示

点击这个Copy path这样就拿到了按钮的xpath的内容,然后实现点击页面就可以了,好了就这样分析完了,接下来开始写代码了。

重要代码

selenium打开豆瓣短评页面

# 待打开的页面
    url = 'https://movie.douban.com/subject/34812928/comments?limit=20&status=P&sort=new_score'
    # 躲避智能检测
    option = webdriver.ChromeOptions()
    # option.headless = True
    option.add_experimental_option('excludeSwitches', ['enable-automation'])
    option.add_experimental_option('useAutomationExtension', False)
    driver = webdriver.Chrome(options=option)
    driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument',
                           {'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})'
                            })
    #打开页面
    driver.get(url)

根据xpath来获取评论内容

这里获取评论的xpath语句

//span[@class="short"]

获取评论代码

        options = driver.find_elements(By.XPATH, '//span[@class="short"]')
        for i in options:
           text=text+i.text

实现跳转下一页

下一页的按钮xpath

//*[@id="paginator"]/a

跳转按钮点击代码

        nextpage = driver.find_element(By.XPATH, '//*[@id="paginator"]/a')
        nextpage.click()

完整代码

词云生成工具类

# -*- codeing = utf-8 -*-
# @Time : 2021/10/9 20:54
# @Author : xiaow
# @File : wordcloudutil.py
# @Software : PyCharm

from wordcloud import WordCloud
import PIL.Image as image
import numpy as np

import jieba

def trans_CN(text):
    # 接收分词的字符串
    word_list = jieba.cut(text)
    # 分词后在单独个体之间加上空格
    result = " ".join(word_list)
    return result

def getWordCloud(text):
    # print(text)
    text = trans_CN(text)
    # 词云背景图
    mask = np.array(image.open("E://file//pics//mask3.jpg"))
    wordcloud = WordCloud(
        mask=mask,
        # 字体样式文件
        font_path="C:\Windows\Fonts\STXINGKA.TTF",
        background_color='white'
    ).generate(text)
    image_produce = wordcloud.to_image()
    image_produce.show()

评论获取代码

# -*- codeing = utf-8 -*-
# @Time : 2021/6/27 22:29
# @Author : xiaow
# @File : test.py
# @Software : PyCharm
import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from api import wordcloudutil
if __name__ == '__main__':
    url = 'https://movie.douban.com/subject/34812928/comments?limit=20&status=P&sort=new_score'
    # 躲避智能检测
    option = webdriver.ChromeOptions()
    # option.headless = True
    option.add_experimental_option('excludeSwitches', ['enable-automation'])
    option.add_experimental_option('useAutomationExtension', False)
    driver = webdriver.Chrome(options=option)
    driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument',
                           {'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})'
                            })
    driver.get(url)
    text=''
    # 获取所有的选项元素
    j=0
    while 1:
        # 定位到新跳转的页面
        time.sleep(1)
        driver.switch_to.window(driver.window_handles[0])

        options = driver.find_elements(By.XPATH, '//span[@class="short"]')
        for i in options:
           text=text+i.text
        time.sleep(2)
        nextpage = driver.find_element(By.XPATH, '//*[@id="paginator"]/a')
        nextpage.click()
        j=j+1
        if j>10:
            break
    print(text)
    wordcloudutil.getWordCloud(text)

成果

最后爬取的评论生成了词云图,如下图所示

就这样就结束了,还是很简单的

到此这篇关于python小练习之爬鱿鱼游戏的评价生成词云的文章就介绍到这了,更多相关Python 爬取鱿鱼游戏内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python实战练习之终于对肯德基下手

    准备工作 查看肯德基官网的请求方法:post请求. X-Requested-With: XMLHttpRequest 判断得肯德基官网是ajax请求 通过这两个准备步骤,明确本次爬虫目标: ajax的post请求肯德基官网 获取上海肯德基地点前10页. 分析 获取上海肯德基地点前10页,那就需要先对每页的url进行分析. 第一页 # page1 # http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=cname # POST # cnam

  • python实例小练习之Turtle绘制南方的雪花

    导语 又到了裹紧被子,穿起秋裤的季节! 这些天,我们这边开始下雨了,温度瞬间降了10几度. 遭受了秋天第一场寒潮的"侵袭",我是真的冷,一大早穿上了长裙. 寒风呼啸,大雪飘飘,咳咳咳......说的严重了点儿,还没飘雪呢,思维有点儿远了! 唯一的愿望就是: 我们公司的冷空调能不能稍微收住一点儿,话说还有的同事穿着短衣短裤是怎么熬过来的, 咋没感觉冷呢?后面我还加了一件外套来着!后来想了想:估计是男孩子皮比较厚一点点.[开个玩笑.jpg] 哼唧唧,独冷冷不如众冷冷,木木子来帮你了~大家一

  • 趣味Python实战练习之自动更换桌面壁纸脚本附源码

    目录 前言 目标地址 先是爬虫代码 导入数据 请求数据 解析数据 保存数据 运行代码,查看结果 自动跟换桌面壁纸代码 最后实现效果 前言 发现一个不错的壁纸网站,里面都是超高清的图片,而且还是免费为的. 所以,我打算把这些壁纸都爬取下来,然后在做一个自动跟换桌面壁纸的脚本,这样基本上你一年都可以每天都有不重复桌面了 目标地址 先来看看我们这次的受害者:https://wallhaven.cc/ [付费VIP完整版]只要看了就能学会的教程,80集Python基础入门视频教学 点这里即可免费在线观看

  • python练习之曾经很火的小人画爱心表白代码

    导语 哈喽!我是木木子,又到了今日更新时刻!​ ​ 我们来看看写什么呢? 小编有个好兄弟最近在追妹子,跟妹子打得火热!就差临门一脚了,这一jio我帮忙补上去了! 他问有没有什么酷炫的表白方式,可以给人心动的赶jio,表白的方式有许多种 今天木木子来教大家一个之前很火的小人画爱心表白代码! 正文 Turtle库是python的基础绘图库,这个库使用起来很方便,了解基础的一些信息之后学起来很快是小编绘图的首选! 首先绘制爱心 import turtle import time # 画心形圆弧 def

  • Python爬虫小练习之爬取并分析腾讯视频m3u8格式

    目录 普通爬虫正常流程: 环境介绍 分析网站 开始代码 导入模块 数据请求 提取数据 遍历 保存数据 运行代码 普通爬虫正常流程: 数据来源分析 发送请求 获取数据 解析数据 保存数据 环境介绍 python 3.8 pycharm 2021专业版 [付费VIP完整版]只要看了就能学会的教程,80集Python基础入门视频教学 点这里即可免费在线观看 分析网站 先打开开发者工具,然后搜索m3u8,会返回给你很多的ts的文件,像这种ts文件,就是视频的片段 我们可以复制url地址,在新的浏览页打开

  • python小练习之爬鱿鱼游戏的评价生成词云

    目录 前言 分析页面 重要代码 selenium打开豆瓣短评页面 根据xpath来获取评论内容 实现跳转下一页 完整代码 成果 前言 鱿鱼游戏是什么,相信大家都不陌生了,虽然说博主没看过这部剧,但是还是对豆瓣的评论有点好奇,刚刚好近期学习了selenium,就当练练手了,来吧来吧,爬爬爬. 分析页面 还是老样子,兄弟们先打开我们最喜欢的google浏览器,点击F12,开启爬虫快乐模式 来到页面,如下图步骤,逐个点击 然后我们就发现这个页面确实很简单,每一条评论就是包在了class为short的s

  • Python爬取你好李焕英豆瓣短评生成词云的示例代码

    爬取过程: 你好,李焕英 短评的URL: https://movie.douban.com/subject/34841067/comments?start=20&limit=20&status=P&sort=new_score 分析要爬取的URL; 34841067:电影ID start=20:开始页面 limit=20:每页评论条数 代码: url = 'https://movie.douban.com/subject/%s/comments?start=%s&limit

  • python生成词云的实现方法(推荐)

    期末复习比较忙过段时间来专门写scrapy框架使用,今天介绍如何用python生成词云,虽然网上有很多词云生成工具,不过自己用python来写是不是更有成就感. 今天要生成的是励志歌曲的词云,百度文库里面找了20来首,如<倔强>,海阔天空是,什么的大家熟悉的. 所要用到的python库有 jieba(一个中文分词库).wordcould .matplotlib.PIL.numpy. 首先我们要做的是读取歌词.我将歌词存在了文件目录下励志歌曲文本中. 现在来读取他 #encoding=gbk l

  • 从CentOS安装完成到生成词云python的实例

    前言 人生苦短,我用python.学习python怎么能不搞一下词云呢是不是(ง •̀_•́)ง 于是便有了这篇边实践边记录的笔记. 环境:VMware 12pro + CentOS7 + Python 2.7.5 安装系统 之前一直用的是win10子系统,现在试试CentOS,CentOS官网下载最新系统dvd版 安装到VMware 12pro.网上很多教程.例如这个链接.等待安装完成后开始. 第一个命令 用Ubuntu的时候没有的命令会提示你安装,感觉很简单的事.但是到CentOS上却变得很

  • 详解Python如何生成词云的方法

    前言 今天教大家用wrodcloud模块来生成词云,我读取了一篇小说并生成了词云,先看一下效果图: 效果图一: 效果图二: 根据效果图分析的还是比较准确的,小说中的主人公就是"程理",所以出现次数最多.图中有两种模式,一种是默认的模式,另一种是自己添加图片作为背景.下面我就带大家一起来学习怎样去生成词云! wordcloud的安装 对于新人来说安装wordcloud模块就是一大关,我们一般都是通过Pycharm或者PIP安装的,但是在安装wordcloud时会提示错误,如下: 我的解决

  • Python生成词云的实现代码

    1 概述 利用Python生成简单的词云,需要的工具是cython,wordcloud与anaconda. 2 准备工作 包括安装cython,wordcloud与anaconda. 2.1 安装anaconda 下载官网 选择对应的版本下载即可. 2.2 安装cython cython是为了安装wordcloud准备的. pip -m pip install --upgrade cython 2.3 安装wordcloud 安装wordcloud前需要先安装Microsoft Visuall

  • Python将QQ聊天记录生成词云的示例代码

    在这个情人节前夕,我把现任对象回收掉了,这段感情积攒了太多的失望,也给了我太多的伤害,所以我看到这个活动的第一反应是拒绝的.然而人生嘛,最重要的就是体验,沉浸在过去的回忆里没有意义,积极面对才能让自己更好地重振旗鼓. 所以,当大家都一致地在这个活动里各种秀恩爱时,我决定走一条不一样的路来为单身狗和刚分手的小伙伴们打打气:时间能改变的,是那些原本就不坚定的东西,未来的路还很长,笑一笑,一切都会过去的! 言归正传,我们要做的任务是,把 QQ 分手聊天记录导出,使用 Python 分词后做成分开的桃心

  • Python 使用tf-idf算法计算文档关键字权重并生成词云的方法

    Python 使用tf-idf算法计算文档关键字权重,并生成词云 1. 根据tf-idf计算一个文档的关键词或者短语: 代码如下: 注意需要安装pip install sklean: from re import split from jieba.posseg import dt from sklearn.feature_extraction.text import TfidfVectorizer from collections import Counter from time import

  • Python编程实现小姐姐跳舞并生成词云视频示例

    目录 制作过程分为以下几个部分 1.视频下载 2.B 站弹幕下载 3.视频切帧,人像分割 4.对分割后的图像制作词云图 5.图片拼接,合成视频 最后 Python做了一个词云视频,以另一种角度来看小姐姐跳舞 制作过程分为以下几个部分 1.视频下载 首先需要下载一个小姐姐跳舞的视频,这里我用的是 you-get 工具,可借助 Python 的 pip 命令进行安装 pip install you-get you-get 支持下载平台包括:Youtube.Blili.TED.腾讯.优酷.爱奇艺(涵盖

  • 详解如何用Python登录豆瓣并爬取影评

    目录 一.需求背景 二.功能描述 三.技术方案 四.登录豆瓣 1.分析豆瓣登录接口 2.代码实现登录豆瓣 3.保存会话状态 4.这个Session对象是我们常说的session吗? 五.爬取影评 1.分析豆瓣影评接口 2.爬取一条影评数据 3.影评内容提取 4.批量爬取 六.分析影评 1.使用结巴分词 七.总结 上一篇我们讲过Cookie相关的知识,了解到Cookie是为了交互式web而诞生的,它主要用于以下三个方面: 会话状态管理(如用户登录状态.购物车.游戏分数或其它需要记录的信息) 个性化

随机推荐