爬虫大作业

1.选一个自己感兴趣的主题。

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

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

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

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

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

主题:央视网美食新闻

import requests
import re
from bs4 import BeautifulSoup
import jieba

newsUrl = 'http://food.cctv.com/hangye/index.shtml/'
res = requests.get(newsUrl)
res.encoding = 'utf-8'
soup = BeautifulSoup(res.text,'html.parser')

#把获取到的新闻内容写入News文件中
def writeNewsDetail(content):
    f=open('News.txt','a',encoding='utf-8')
    f.write(content)
    f.close()

#获取新闻的详细内容
def getNewDetail(url):
    resd = requests.get(url)
    resd.encoding = 'utf-8'
    soupd = BeautifulSoup(resd.text, 'html.parser')

    news = {}
    for c in soupd.select('.cnt_bd'):
        for i in c.select('p'):
            news['content'] = i.text
            writeNewsDetail(news['content'])

    title = soupd.select('h1')[0].text
    print('标题:',title)

    time = soupd.select('.info')[0].select('i')[0].text[0:7].lstrip('来源:')
    source = soupd.select('.info')[0].select('i')[0].text[7:25]
    print('来源:', time)
    print('发布时间:', source)

#获取每个新闻的链接
for n in soup.select('.col_w674'):
    for news in n.select('ul'):
        for new in news.select('li'):
            for t in new.select('a'):
                a = new.select('a')[0].attrs['href']  # 链接
                getNewDetail(a)
                # print(url)
                break

问题:安装词云插件失败

解决方法:使用在线生成词云工具来生成词云

运行结果:

原文地址:https://www.cnblogs.com/wumeiying/p/8974757.html