zoukankan      html  css  js  c++  java
  • 一个完整的大作业

    1.选一个自己感兴趣的主题。我选的是途牛网,并定位到自己家乡韶关。

    2.网络上爬取相关的数据,截取网站的标题以及来源。

    import requests
    from bs4 import BeautifulSoup
    res=requests.get('http://trips.tuniu.com/search?q=%E9%9F%B6%E5%85%B3')
    res.encoding='utf-8'
    soup=BeautifulSoup(res.text,'html.parser')
     
    for trips in soup.select('li'):
        if len(trips.select('.list-name'))>0:
          title=trips.select('.list-name')[0].text
          url=trips.select('a')[0]['href']
          print(title,url)

    3.进行文本分析,生成词云。我将网站复制下来,使用字典的方法统计出出现次数最多的20个词,并去掉一些符号。

    import jieba
    fr=open("tuniu.txt",'r',encoding='utf-8')
    s=list(jieba.cut(fr.read()))
    exp={',','
    ','.','。','”','“',':','…',' ','?','(',')','*',':','1',';'}
    key=set(s)-exp
    dic={}
    for i in key:
        dic[i]=s.count(i)
    wc=list(dic.items())
    wc.sort(key=lambda x:x[1],reverse=True)
    for i in range(20):
        print(wc[i])
    fr.close()
    

      

    生成词云。生成词云中遇到很多问题,其中找字体就是一个最麻烦的事。用中文制作词云必须设置字体,否则词云中的中文会变成方框。

    #coding:utf-8
    import jieba
    from wordcloud import WordCloud
    import matplotlib.pyplot as plt
     
    text =open("tuniu.txt",'r',encoding='utf-8').read()
    print(text)
    wordlist = jieba.cut(text,cut_all=True)
    wl_split = "/".join(wordlist)
     
    mywc = WordCloud(
          font_path="simfang.ttf"
    
        ).generate(text)
    plt.imshow(mywc)
    plt.axis("off")
    plt.show()
     
    

  • 相关阅读:
    myeclipse16怎么去掉项目中的CodeLive Panel?
    JTable动态刷新数据
    javaEE中config.properties文件乱码解决办法
    ZipUtil
    uri中为什么本地文件file后面跟三个斜杠, http等协议跟两个斜杠?
    Java中Access restriction:····的解决方法
    libGDX开发环境搭建-Android Studio 最新版
    mxnet反序列化: 由symbol到gluon
    mxnet symbol reshape用法
    Hybrid
  • 原文地址:https://www.cnblogs.com/elewen/p/7689619.html
Copyright © 2011-2022 走看看