爬取豆瓣应用的函数同样可以用来爬取新闻。这里面主要是正则表达式的提取和对爬出的链接再进行爬取解析。对网页不

import re  # 正则
from bs4 import BeautifulSoup  # 网页解析
import urllib.request, urllib.error  # 制定url获取网络数据def main():baseurl = "       "  #新闻总网站选取爬取网站网址getData(baseurl)  # 函数调用#生成词云findlink = re.compile(r'<a href="(.*?)" target="_blank">')  # 分网站链接
findword= re.compile(r'<p>(.*?)</p>')  # 内容def getData(baseurl):# 爬取links = []url=baseurlhtml = askURL(url)#print(html)# 解析soup = BeautifulSoup(html, "html.parser")#print(soup)try:for item in soup.find_all('li',class_="clearfix"):#不同网站内容不同data = []item = str(item)link=str(re.findall(findlink,item)[0])html=askURL(link)Soup=BeautifulSoup(html, "html.parser")Soup=str(Soup )word=str(re.findall(findword,Soup ))word=str(re.findall(r'[\u4e00-\u9fa5]',word))word=word.replace("'",'')word = word.replace(",", '')word = str(word.replace(" ", ''))with open("新闻.txt", "a+") as f:  # 写入txtf.write(word)links.append(data)for item1 in soup.find_all('div', class_="list-focus"):  #选择爬取部份data1 = []item1 = str(item1)link = str(re.findall(findlink, item1)[0])html = askURL(link)Soup1 = BeautifulSoup(html, "html.parser")  # 解析那四个Soup1 = str(Soup1)word = str(re.findall(findword, Soup1))word = str(re.findall(r'[\u4e00-\u9fa5]', word))  # 提取所有汉字word = word.replace("'", '')word = word.replace(",", '')word = str(word.replace(" ", ''))with open("新闻.txt", "a+") as f:#写入txtf.write(word)links.append(data1)for i in range(0, 300):url = baseurlhtml = askURL(url)for item2 in soup.find_all('li', class_="active"):  #选择爬取部分data2 = []item2 = str(item2)link = str(re.findall(findlink, item2)[0])html = askURL(link)Soup2 = BeautifulSoup(html, "html.parser")  # 解析Soup2 = str(Soup2)word = str(re.findall(findword, Soup2))word = str(re.findall(r'[\u4e00-\u9fa5]', word))  # 提取所有汉字word = word.replace("'", '')word = word.replace(",", '')word = str(word.replace(" ", ''))with open("新闻.txt", "a+") as f:#写入txtf.write(word)links.append(data2)except Exception as e:print(e)returndef askURL(url):head = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 Edg/106.0.1370.42"}request = urllib.request.Request(url, headers=head)html = ""try:response = urllib.request.urlopen(request)html = response.read().decode("utf-8")except urllib.error.URLError as e:if hasattr(e, "code"):print(e.code)if hasattr(e, "reason"):print(e.reason)return htmlif __name__ == "__main__":main()print("爬取完毕")

同的地方位置重复爬取。我这里对新闻不同位置元素爬取。多次用解析函数。别的都是按正常的。

首先用来隐藏成正常的电脑IP。在head那。然后用库函数访问。并指出别的情况。正则表达式主要用F12进行查取。取消不必要的部份。

后面是词云生成

import re
import jieba
from wordcloud import WordCloud
import cv2.cv2 as cvdef analysis(savepath):f = open(savepath, 'r', encoding='gbk')result = f.read()result = re.sub('[a-zA-Z0-9"#$%&\'()*+,-./::;""()<=>?@,。?、…【】《》?![\\]^_`{|}~\s]+', '', result)#消除符号和换行words = jieba.lcut(result)string = []for word in words:if len(word) == 1:continueelse:string.append(word)strings =' '.join(string)mk = cv.imread(' ')#背景图形的填入w = WordCloud(font_path="C:\Windows\Fonts\simhei.ttf", background_color="Red", width=1000, height=600, mask=mk,max_words=500, colormap="autumn",stopwords={' '})#这里依次是是所用字体,在文件夹里寻找可以更改。然后是背景颜色,定义长宽。##使用图形。定义最大词数,字体颜色定义。w.generate(strings)w.to_file('wordcloud.jpg')#生成词云图image = w.to_image()image.show()def main():savepath = "新闻2.txt"analysis(savepath)print("finish")if __name__ == "__main__":main()

用jiaba函数进行分词。然后把内容用循环遍历转成字符串。用词云函数代码中有注释。然后生成词云图。大体就是这样,不过在爬取时可以简化。从总的爬取。所有的新闻都有一个相同点可以用来爬取。

stopwords={' '}用来选择词云中不显现的词语

爬虫爬取新闻并生成词云相关推荐

  1. python爬取微博数据词云_用Python爬取微博数据生成词云图片

    原标题:用Python爬取微博数据生成词云图片 欢迎关注天善智能 hellobi.com,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区,学习.问答.求职,一站式搞定! 对商业智能BI.大数 ...

  2. python爬取豆瓣影评生成词云的课程设计报告_简单爬取《小丑》电影豆瓣短评生成词云...

    导语 在前段时间看了杰昆菲尼克斯的小丑电影,心里很好奇大部分观众看完这部电影之后对此有什么评价,然后看了看豆瓣短评之后,觉得通过python把短评中出现最多的单词提取出来,做成一张词云,看看这部电影给 ...

  3. 爬取唐诗宋词生成词云

    Python 高并发线程爬取诗词之诗词分析 本节所讲内容: 1.5分钟快速了解爬虫概念 2.beautifulsoup 匹配原则 3.wordcloud 使用详情 实战:爬取中国唐诗宋词,体验文人雅士 ...

  4. Python3.6+jieba+wordcloud 爬取豆瓣影评生成词云

    在上一篇介绍了如何通过Python爬虫抓取豆瓣电影榜单.Python3.6+Beautiful Soup+csv 爬取豆瓣电影Top250 此篇博客主要抓取豆瓣某个电影的影评,利用jieba分词和wo ...

  5. 爬虫——爬取人民网数据生成词云图

    1.以人民网的新闻数据为例,简单介绍的利用python进行爬虫,并生成词云图的过程. 首先介绍python的requests库,它就好像是一个"爬手",负责到用户指定的网页上将所需 ...

  6. python爬取豆瓣影评生成词云的课程设计报告_Python爬取豆瓣影评,生成词云图,只要简单一步即可实现。...

    最近看了一部电影<绣春刀>,里面的剧情感觉还不错,本文爬取的是绣春刀电影的豆瓣影评,1000个用户的短评,共5W多字.用jieba分词,对词语的出现频率进行统计,再通过wordcloud生 ...

  7. python爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取上千条新闻

    爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取千条新闻 文章目录 爬虫爬取新闻实战01:小白如何迅速学会爬虫爬取千条新闻 1.前言 2 .爬虫原理介绍 2.1.图片爬虫 2.2 文字爬虫 3.用八爪鱼 ...

  8. python爬取学校新闻_python爬虫爬取新闻的简单实现

    我们通常是使用爬虫爬取网站信息,其实网络爬虫是一种应用于搜索引擎的程序.使用python爬虫可以将一个网站的所有内容与链接进行阅读.例如我们每日都要获取新闻信息,利用python爬虫就可以帮助我们爬取 ...

  9. Python 爬取京东商品评论 + 词云展示

    利用python爬虫爬取京东商品评论数据,并绘制词云展示. 原文链接:https://yetingyun.blog.csdn.net/article/details/107943979 创作不易,未经 ...

最新文章

  1. 从零开始学习 webservice第一集,java webservice简单实例入门教程
  2. I00040 计算1000以内的勾股数
  3. 图像相似度测量与模板匹配总结
  4. iOS13后添加SceneDelegate初始化window
  5. 手机mstsc远程工具_远程桌面连接,只需3步,轻松远程操控电脑!
  6. 数据可视化必备的高逼格图表特效,学会只需要五分钟
  7. 【技巧】LeetCode 86. Partition List
  8. VMware下安装Windows ME
  9. PCB的制作工艺流程
  10. 锂电池电源管理系统设计与实现(单片机)
  11. 学了这么久的编程,编程语言创始人你知道几个?
  12. 2022南京商业贷款提前还款
  13. SCORM的对手——LOM
  14. GAN原理,优缺点、应用总结
  15. Latex去掉proof后面显示的小白框 (\qed)
  16. 机器学习——决策树(ID3)的实现
  17. 华为领衔,“5G+摄像头”拿下双影帝,多家国产手机凭借拍照入围MWC最佳演员... 1
  18. python123 第四次作业_第四次作业
  19. Python分布式动态页面爬虫研究
  20. App自动化测试之Java平台下使用Appium测试App(一)

热门文章

  1. 如何下载北辰区卫星地图高清版大图
  2. 打工人防加班办公技巧合集(第3期)
  3. JAVA毕业设计公司CRM客户管理系统计算机源码+lw文档+系统+调试部署+数据库
  4. matlab背景换为黑色的,matlab、opencv护眼模式之黑色主题
  5. newduba首页怎么去掉_浏览器主页被篡改劫持为2345或duba 已解决!
  6. 哆啦a梦教你页面的转发与重定向
  7. STM32F103 GPIO之按键检测
  8. elasticsearch与MySQL
  9. WIN10电脑右下角出现红叉子的问题?
  10. Xshell的使用;用Xshell修改服务器 Nginx配置文件-超详细(以修改上传文件大小上限为例)