python爬取豆瓣评论制作词云代码

目录
  • 一、爬取豆瓣热评
  • 二、制作词云
  • 总结

一、爬取豆瓣热评

该程序进行爬取豆瓣热评,将爬取的评论(json文件)保存到与该python文件同一级目录下
注意需要下载这几个库:requests、lxml、json、time

import requests
from lxml import etree
import json
import time
class Spider(object):
    def __init__(self):
        #seif.ure='https://movie.douban.com/subject/23885074/reviews?start=0'
        self.headers={
            'User-Agent':'Mozilla/5.0(Windows NT6.1;Win64;x64)AppleWebKit/537.36(KHTML,like Gecko)Chrome/75.0.3700.100Safari/537.36'
        }
    def get_data(self,url):
        response = requests.get(url,headers=self.headers).content.decode('utf-8')
        page=etree.HTML(response)#xpath 对象
        #获取所有数据节点
        node_list = page.xpath('//div[@class="review-list  "]/div')
        for node in node_list:
            #作者
            author = node.xpath('.//header[@class="main-hd"]//a[2]/text()')[0]
            #评论
            text = node.xpath('string(.//div[@class="main-bd"]//div[@class="short-content"])')

            items={
                'author':author,
                'text':text.strip()
            }
            #持久化存储
            with open('yewen.json','a',encoding='utf-8') as f:
                f.write(json.dumps(items,ensure_ascii=False)+'\n')
    def run(self):
        for i in range(1,47):
            url='https://movie.douban.com/subject/26885074/reviews?start{}'.format(i*20)
            print('正在爬取第{}页'.format(i))
            self.get_data(url)
            time.sleep(3)
if __name__=='__main__':
    s=Spider()
    s.run()

二、制作词云

该程序将json中的数据进行处理,提取重要信息,并用wordcloud库制作词云图片,同样保存到与该python文件同一级目录下
注意需要下载这几个库:jieba、wordcloud、json

import jieba
from wordcloud import WordCloud
import json
f= open("yewen.json", "r", encoding="utf-8")
data_list= f.readlines()
str =''
for data in data_list:
    text= json.loads(data)['text']
    str +=text
#替换无关紧要的词语
result_str = str.replace('展开', '').replace('这篇','').replace('影评','').replace('电影','').replace('这部', '').replace('可能', '').replace('剧情','')
cut_text = jieba.lcut(result_str)
result = " ".join(cut_text)
wc = WordCloud(font_path='simhei.ttf',
               background_color="white",
               max_words=600,
               width=1000,
               height=1000,
               min_font_size=20,
               max_font_size=100,)
    #mast=plt.imreda('snake.jpg')#背景图片
wc.generate(result)#转化为词云的操作
wc.to_file("text.jpg")#保存
f.close()

总结

到此这篇关于python爬取豆瓣评论制作词云代码的文章就介绍到这了,更多相关python爬取豆瓣评论内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 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爬取哆啦A梦-伴我同行2豆瓣影评并生成词云图

    一.前言 通过这篇文章,你将会收货: ① 豆瓣电影数据的爬取: ② 手把手教你学会词云图的绘制: 二.豆瓣爬虫步骤 当然,豆瓣上面有很多其他的数据,值得我们爬取后做分析.但是本文我们仅仅爬取评论信息. 待爬取网址: https://movie.douban.com/subject/34913671/comments?status=P 由于只有一个字段,我们直接使用re正则表达式,解决该问题. 那些爬虫小白看过来,这又是一个你们练手的好机会. 下面直接为大家讲述爬虫步骤: # 1. 导入相关库,用

  • python爬取豆瓣评论制作词云代码

    目录 一.爬取豆瓣热评 二.制作词云 总结 一.爬取豆瓣热评 该程序进行爬取豆瓣热评,将爬取的评论(json文件)保存到与该python文件同一级目录下注意需要下载这几个库:requests.lxml.json.time import requests from lxml import etree import json import time class Spider(object): def __init__(self): #seif.ure='https://movie.douban.co

  • python爬取热搜制作词云

    环境:win10,64位,mysql5.7数据库,python3.9.7,ancod 逻辑流程: 1.首先爬取百度热搜,至少间隔1小时 2.存入文件,避免重复请求,如果本1小时有了不再请求 3.存入数据库,供词云包使用 1.爬取热搜,首先拿到url,使用的包urllib,有教程说urllib2是python2的. '''读取页面''' def readhtml(self,catchUrl): catchUrl=self.catchUrl if not catchUrl else catchUrl

  • python 爬取豆瓣电影短评并利用wordcloud生成词云图

    目录 前言 第一步.准备数据 第二步.编写爬虫代码 第三步.生成词云图 前言 最近学到数据可视化到了词云图,正好学到爬虫,各种爬网站[实验名称] 爬取豆瓣电影<千与千寻>的评论并生成词云 利用爬虫获得电影评论的文本数据 处理文本数据生成词云图 第一步.准备数据 需要登录豆瓣网站才能够获得短评文本数据movie.douban.com/subject/129… 首先获取cookies,使用爬虫强大的firefox浏览器 将cookies数据复制到cookies.txt文件当中备用, 第二步.编写爬

  • Python爬取豆瓣视频信息代码实例

    这篇文章主要介绍了Python爬取豆瓣视频信息代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 这里是爬取豆瓣视频信息,用pyquery库(jquery的python库). 一:代码 from urllib.request import quotefrom pyquery import PyQuery as pqimport requestsimport pandas as pddef get_text_page (movie_name)

  • python爬取微博评论的实例讲解

    python爬虫是程序员们一定会掌握的知识,练习python爬虫时,很多人会选择爬取微博练手.python爬虫微博根据微博存在于不同媒介上,所爬取的难度有差异,无论是python新入手的小白,还是已经熟练掌握的程序员,可以拿来练手.本文介绍python爬取微博评论的代码实例. 一.爬虫微博 与QQ空间爬虫类似,可以爬取新浪微博用户的个人信息.微博信息.粉丝.关注和评论等. 爬虫抓取微博的速度可以达到 1300万/天 以上,具体要视网络情况. 难度程度排序:网页端>手机端>移动端.微博端就是最好

  • python爬取豆瓣电影排行榜(requests)的示例代码

    '''   爬取豆瓣电影排行榜   设计思路:        1.先获取电影类型的名字以及特有的编号        2.将编号向ajax发送get请求获取想要的数据        3.将数据存放进excel表格中 ''' 环境部署: 软件安装: Python 3.7.6 官网地址:https://www.python.org/ 安装地址:https://www.python.org/ftp/python/3.7.6/python-3.7.6-amd64.exe PyCharm 2020.2.2

  • python 爬取豆瓣网页的示例

    python作为一种已经广泛传播且相对易学的解释型语言,现如今在各方面都有着广泛的应用.而爬虫则是其最为我们耳熟能详的应用,今天笔者就着重针对这一方面进行介绍. python 语法简要介绍 python 的基础语法大体与c语言相差不大,由于省去了c语言中的指针等较复杂的结构,所以python更被戏称为最适合初学者的语言.而在基础语法之外,python由其庞大的第三方库组成,而其中包含多种模块,而通过模块中包含的各种函数与方法能够帮助我们实现各种各样的功能. 而在python爬虫中,我们需要用到的

  • python爬取豆瓣电影TOP250数据

    在执行程序前,先在MySQL中创建一个数据库"pachong". import pymysql import requests import re #获取资源并下载 def resp(listURL): #连接数据库 conn = pymysql.connect( host = '127.0.0.1', port = 3306, user = 'root', password = '******', #数据库密码请根据自身实际密码输入 database = 'pachong', cha

  • 用python爬取豆瓣前一百电影

    目录 实现代码: 代码分析: 运行结果: 总结 网站爬取的流程图: 实现项目我们需要运用以下几个知识点 一.获取网页1.找网页规律:2.使用 for 循环语句获得网站前4页的网页链接:3.使用 Network 选项卡查找Headers信息:4.使用 requests.get() 函数带着 Headers 请求网页. 二.解析网页1.使用 BeautifulSoup 解析网页:2.使用 BeautifulSoup 对象调用 find_all() 方法定位包含单部电影全部信息的标签:3.使用 Tag

  • Python爬取qq空间说说的实例代码

    具体代码如下所示: #coding:utf-8 #!/usr/bin/python3 from selenium import webdriver import time import re import importlib2 import sys importlib2.reload(sys) def startSpider(): driver = webdriver.Chrome('/Users/zachary/zachary/chromedriver.exe') #这个是chormedriv

随机推荐