一个完整的python大作业

由于能选择一个感兴趣的网站进行数据分析,所以这次选择爬取的网站是新华网,其网址为"http://www.xinhuanet.com/",然后对其进行数据分析并生成词云

运行整个程序相关的代码包

import requests
import re
from bs4 import BeautifulSoup
from datetime import datetime
import pandas
import sqlite3
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt

爬取网页信息

url = "http://www.xinhuanet.com/"

f=open("css.txt","w+")
res0 = requests.get(url)
res0.encoding="utf-8"
soup = BeautifulSoup(res0.text,"html.parser")
newsgroup=[]
for news in soup.select("li"):
    if len(news.select("a"))>0:
        print(news.select("a")[0].text)
        title=news.select("a")[0].text
        f.write(title)
f.close()

存入txt文件中,并进行字词统计

f0 = open('css.txt','r')
qz=[]
qz=f0.read()
f0.close()
print(qz)

words = list(jieba.cut(qz))

ul={':','','"','','','','','','','',' ','\u3000','','\n'}
dic={}

keys = set(words)-ul
for i in keys:
    dic[i]=words.count(i)

c = list(dic.items())
c.sort(key=lambda x:x[1],reverse=True)

f1 = open('diectory.txt','w')
for i in range(10):
    print(c[i])
    for words_count in range(c[i][1]):
        f1.write(c[i][0]+' ')
f1.close()

存入数据库

df = pandas.DataFrame(words)

print(df.head())

with sqlite3.connect('newsdb3.sqlite') as db:

    df.to_sql('newsdb3',con = db)

制作词云

f3 = open('diectory.txt','r')
cy_file = f3.read()
f3.close()
cy = WordCloud().generate(cy_file)
plt.imshow(cy)
plt.axis("off")
plt.show()

最终成果

 完整代码

import requests
import re
from bs4 import BeautifulSoup
from datetime import datetime
import pandas
import sqlite3
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt


url = "http://www.xinhuanet.com/"

    

f=open("css.txt","w+")
res0 = requests.get(url)
res0.encoding="utf-8"
soup = BeautifulSoup(res0.text,"html.parser")
newsgroup=[]
for news in soup.select("li"):
    if len(news.select("a"))>0:
        print(news.select("a")[0].text)
        title=news.select("a")[0].text
        f.write(title)
f.close()

f0 = open('css.txt','r')
qz=[]
qz=f0.read()
f0.close()
print(qz)

words = list(jieba.cut(qz))

ul={':','','"','','','','','','','',' ','\u3000','','\n'}
dic={}

keys = set(words)-ul
for i in keys:
    dic[i]=words.count(i)

c = list(dic.items())
c.sort(key=lambda x:x[1],reverse=True)

f1 = open('diectory.txt','w')
for i in range(10):
    print(c[i])
    for words_count in range(c[i][1]):
        f1.write(c[i][0]+' ')
f1.close()

df = pandas.DataFrame(words)

print(df.head())

with sqlite3.connect('newsdb3.sqlite') as db:

    df.to_sql('newsdb3',con = db)


f3 = open('diectory.txt','r')
cy_file = f3.read()
f3.close()
cy = WordCloud().generate(cy_file)
plt.imshow(cy)
plt.axis("off")
plt.show()

 

转载于:https://www.cnblogs.com/murasame/p/7769198.html

  • 18
    点赞
  • 171
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
python大作业 一、Turtle创意大PK 自拟题目,完成一个利用Python程序的创意绘图,采用turtle库绘图为主,不少于50行代码,可选采用其他库。 (滑稽绘制) 二、程序练习 2.1 问题描述(10分) 人们常常提到"一万小时定律",就是不管你做什么事情,只要坚持一万小时,应该都可以成为该领域的专家。那么,10000小时是多少年多少天呢? 2.2 问题描述(10分)0380031003800341590145037657 编写计算从n到m和的函数‬,函数名为sum(n,m)‬,函数返回值为n到m所有数据的和‬,使用该函数计算输入数据x,y之间所有数据的和。 2.3 问题描述(15分) 编写函数judgeTri(a,b,c),判断以参数a,b,c的值为边长能否构成三角形并判断三角形的形状;若是锐角三角形,返回R;若是直角三角形,返回Z;若是钝角三角形,返回D;若三边长不能构成三角形,返回ERROR。 2.4 问题描述(15分) 用户输入一个字符串,分别统计其中小写字母、大写字母、数字、空格和其他字符的个数,并在一行内输出小写字母、大写字母、数字、空格和其他字符的个数。 2.5 问题描述(20分) 程序的功能: (1) 使用随机库功能,生成一个包含10个不重复且小于200的正整数列表ls1,输出ls1。‬ (2) 使用列表排序方法,对ls1按奇数在前偶数在后,并且奇数之间的相对顺序不变,偶数之间的相对顺序也不变进行排序,再输出ls1。‬ (3) 使用列表排序方法,对ls1按元素字符长度降序进行排序,输出ls1。
### 回答1: 西工大python大作业是指西安工业大学的计算机科学与技术专业学生所完成的一个关于python编程的综合性项目。这个大作业旨在提供学生们运用所学的python知识,解决实际问题的实践平台。 在西工大python大作业中,学生们可以选择不同的主题和方向,比如Web开发、数据分析、人工智能等等。学生们可以根据自己的兴趣和专业方向选择合适的主题,并根据要求完成一个完整python项目。 在完成这个大作业过程中,学生们需要进行需求分析、系统设计、编码实现等多个阶段。他们需要学习和掌握各种python库和工具,比如Django、Flask、TensorFlow等,用于构建他们的项目。 西工大python大作业的评分标准主要包括项目的功能完整性、代码质量、创新性以及文档的完整度等方面。学生们需要展示他们的项目能够解决实际问题,并且能够在实际应用中发挥作用。 通过参加西工大python大作业,学生们可以提高他们的python编程能力和项目开发能力。他们将在实践中学习到很多实用的技能,并且提升解决问题的能力。此外,这也是一个展示自己才华和创造力的机会,对于以后的工作和学习都有着重要的意义。 总之,西工大python大作业一个促使学生们运用所学知识解决实际问题的重要平台。通过完成这个大作业,学生们能够提升自己的编程能力,增加实践经验,并展示自己的创造力和才华。 ### 回答2: 西安工业大学Python大作业是指在学习Python编程语言的过程中,学生需要完成的一项较为复杂的设计、开发任务。 这个大作业通常涉及到多个方面的知识和技能,比如基本的语法和编程概念、面向对象编程、函数和模块的使用、数据结构和算法等。通过完成这个大作业,学生可以提高自己的编程能力和问题解决能力。 在西安工业大学Python大作业中,学生通常需要根据指定的题目或要求,设计并开发一个Python程序。这个程序可能需要实现某种功能,比如数据处理、图像处理、模拟仿真、网站开发等。学生需要根据自己的实际情况,选择合适的开发工具和技术,编写代码并进行调试、测试,最终完成一个能够正常运行的程序。 在完成这个大作业的过程中,学生还需要学习和运用一些相关的知识和技能,比如通过查找文档和参考资料解决问题、学会使用版本控制工具进行代码管理、学会写出高质量的代码等。 通过完成这个大作业,学生可以提高自己的编程能力和解决问题的能力,同时也培养了自己的学习能力和团队合作能力。同时,完成这个大作业也可以作为学生的工作经验和实践能力的体现,对于未来的学习和就业都具有积极的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值