首页 编程教程正文

Python爬取52论坛指定帖子回复数据生成词云图

piaodoo 编程教程 2020-02-22 22:15:03 1226 0 python教程

本文来源吾爱破解论坛

图片镇楼

QQ截图20190710200429.png (135.89 KB, 下载次数: 0)

下载附件  保存到相册

2019-7-10 20:06 上传


代码中是以获取https://www.52pojie.cn/thread-924213-1-1.html为例,370页回复数据

[Python] 纯文本查看 复制代码
import requests
from lxml import etree
import  jieba
import numpy as np
import matplotlib.pyplot as plt
import time
from PIL import Image
from wordcloud import WordCloud, ImageColorGenerator

def GetData(url):
    html = requests.get(url)
    ehtml = etree.HTML(html.text)
    pagenum = ehtml.xpath('//*[@class="last"]/text()')
    if len(pagenum)>0:
        txt=''
        pagenum = pagenum[1].replace('... ', '')
        print('回复共 ' + str(pagenum) + ' 页,请稍候...')
        url=url.split('-')
        for i in range(1,int(pagenum)+1):
            print('第 '+str(i)+' 页')
            nurl=url[0]+'-'+url[1]+'-'+str(i)+'-'+url[3]
            html = requests.get(nurl)
            ehtml = etree.HTML(html.text)
            pltxt = ''.join(ehtml.xpath('//*[@class="t_f"]/text()'))
            txt = txt + pltxt
            time.sleep(1) # 给服务器留些喘气的时间
    else:
        print('回复只有 1 页,这数据是不是太少了...')
        txt = ''.join(ehtml.xpath('//*[@class="t_f"]/text()'))
    cut_text =txt
    background_image = np.array(Image.open('c:\\bg.jpg'))
    wordcloud = WordCloud(
       font_path="C:/Windows/Fonts/simfang.ttf",
       background_color="white",
       mask=background_image).generate(cut_text)
    image_colors = ImageColorGenerator(background_image)
    plt.imshow(wordcloud.recolor(color_func=image_colors), interpolation="bilinear")
    plt.axis("off")
    plt.show()

if __name__ == '__main__':
    print('开始获取,请稍候...')
    url='https://www.52pojie.cn/thread-924213-1-1.html'
    GetData(url)


最后,经过各个版块热贴回复数据爬取测试,发现论坛存在一个相对严重的问题,那就是绝大多数回复内容都是无意义的夸赞(是不是也意味着伸手党越来越多),技术问题的讨论是少之又少,还真是不看不知道,一看吓一跳啊

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/7958.html

搜索