爬虫大作业
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
问题:安装词云插件失败
解决方法:使用在线生成词云工具来生成词云
运行结果: