爬虫大作业

Posted 095罗冠达

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫大作业相关的知识,希望对你有一定的参考价值。

1.选一个自己感兴趣的主题或网站。(所有同学不能雷同)

我选了附近松田学校的校园网来爬取

2.用python 编写爬虫程序,从网络上爬取相关主题的数据。

# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup as bs



def gettext(url):
    header = {
        \'user-agent\': \'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/66.0.3359.117 Safari/537.36\'}
    html = requests.get(url, headers=header).content

    soup = bs(html, \'html.parser\')
    info = soup.select(\'div.newList.black01 a\')
    a = []
    for i in info:
        a.append(i.text)
        print(i.text)
    return a


if __name__ == \'__main__\':
    url = "http://www.sontan.net/newsCenter.do"
    #html = getreq(url)
    info = gettext(url)
    print(info)
    for i in info:
        print(i)
        f = open(\'i.txt\', \'a+\',encoding=\'utf-8\')
        f.write(i)
        f.write(\'\\n\')
        f.close()

 

3.对爬了的数据进行文本分析,生成词云。

import jieba
import PIL
from wordcloud import WordCloud
import matplotlib.pyplot as p
import os

info = open(\'i.txt\', \'r\', encoding=\'utf-8\').read()
text = \'\'
text += \' \'.join(jieba.lcut(info))
wc = WordCloud(font_path=\'C:\\Windows\\Fonts\\STZHONGS.TTF\', background_color=\'White\', max_words=50)
wc.generate_from_text(text)
p.imshow(wc)
# p.imshow(wc.recolor(color_func=00ff00))
p.axis("off")
p.show()
wc.to_file(\'dream.jpg\')

 

4.对文本分析结果进行解释说明。

5.写一篇完整的博客,描述上述实现过程、遇到的问题及解决办法、数据分析思想及结论。

一开始遇到的问题很多,做函数的时候发现自己的基本功非常的不扎实,甚至在导入库方面的知识也很匮乏,好在在同学的帮助下,我还是顺利的完成了任务。感觉做大数据爬取还是很有意思的,不过在爬其他网站的时候经常爬不到东西,应该是被限制了访问,这个问题以后再去深究吧。

6.最后提交爬取的全部数据、爬虫及数据分析源代码。

 

# -*- coding: utf-8 -*-
import requests
from bs4 import BeautifulSoup as bs



def gettext(url):
    header = {
        \'user-agent\': \'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36\'}
    html = requests.get(url, headers=header).content

    soup = bs(html, \'html.parser\')
    info = soup.select(\'div.newList.black01 a\')
    a = []
    for i in info:
        a.append(i.text)
        print(i.text)
    return a


if __name__ == \'__main__\':
    url = "http://www.sontan.net/newsCenter.do"
    #html = getreq(url)
    info = gettext(url)
    print(info)
    for i in info:
        print(i)
        f = open(\'i.txt\', \'a+\',encoding=\'utf-8\')
        f.write(i)
        f.write(\'\\n\')
        f.close()



import jieba
import PIL
from wordcloud import WordCloud
import matplotlib.pyplot as p
import os

info = open(\'i.txt\', \'r\', encoding=\'utf-8\').read()
text = \'\'
text += \' \'.join(jieba.lcut(info))
wc = WordCloud(font_path=\'C:\\Windows\\Fonts\\STZHONGS.TTF\', background_color=\'White\', max_words=50)
wc.generate_from_text(text)
p.imshow(wc)
# p.imshow(wc.recolor(color_func=00ff00))
p.axis("off")
p.show()
wc.to_file(\'dream.jpg\')

 

以上是关于爬虫大作业的主要内容,如果未能解决你的问题,请参考以下文章

爬虫大作业

爬虫大作业

HTML5期末大作业:餐饮美食网站设计——咖啡(10页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 咖啡网页设计 美食餐饮网页设计...(代码片段

Python大作业——爬虫+可视化+数据分析+数据库(可视化篇)

Python大作业——爬虫+可视化+数据分析+数据库(数据分析篇)

Python课程设计大作业:利用爬虫获取NBA比赛数据并进行机器学习预测NBA比赛结果