点击上方“中兴开发者社区”,关注我们

每天读一篇一线开发者原创好文

本文出自方志朋的博客

链接:http://blog.csdn.net/forezp/article/details/70198541

一时兴起,想用Python爬爬自己的博客,通过数据聚合,制作高逼格的云图(对词汇出现频率视觉上的展示),看看最近我到底写了啥文章。

一、直接上几张我的博客数据的云图

1.1 爬取文章的标题的聚合

1.2 爬取文章的摘要的聚合

1.3 爬取文章的标题+摘要的聚合

我最近写了SpringCloud系列教程,还有一些微服务架构方面,从云图上看,基本吻合。你若不信,可以进我的博客看看,数据还是非常准确的

二、技术栈

开发工具: pycharm

爬虫技术:bs64、requsts、jieba

分析工具:wordArt

三、爬虫构架设计

整个爬虫架构非常简单:

爬取我的博客:http://blog.csdn.net/forezp

获取数据

将数据用“结巴”库,分词。

将得到的数据在在artword上制作云图。

将制作出来的云图展示给用户。

四、具体实现

先根据博客地址爬去数据:

url = 'http://blog.csdn.net/forezp'   titles=set()

def download(url):

if url is None:

return None

try:

response = requests.get(url, headers={

'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36',

})

if (response.status_code == 200):

return response.content

return None

except:

return None

解析标题

def parse_title(html):

if html is None:

return None

soup = BeautifulSoup(html, "html.parser")

links = soup.find_all('a', href=re.compile(r'/forezp/article/details'))

for link in links:

titles.add(link.get_text())

解析摘要:

def parse_descrtion(html):

if html is None:

return None

soup=BeautifulSoup(html, "html.parser")

disciptions=soup.find_all('div',attrs={'class': 'article_description'})

for link in disciptions:

titles.add(link.get_text())

用“结巴”分词,”激8”分词怎么用,看这里:https://github.com/fxsjy/jieba/

def jiebaSet():

strs=''

if titles.__len__()==0:

return

for item in titles:

strs=strs+item;

tags = jieba.analyse.extract_tags(strs, topK=100, withWeight=True)

for item in tags:

print(item[0] + '\t' + str(int(item[1] * 1000)))

因为数据比较少,所以我直接打印在控制台,并把它复制下来,更好的方法是存在MongoDB中。

制作云图:

用 artword在线工具,地址:https://wordart.com

首先:

导入从控制台复制过来的数据:

令人尴尬的是,这个网站在绘制图的时候不支持中文,需要你从c:/windows/fonts下选择一个支持中文的字体,mac 用户从windows拷下文件夹也可以,或者在网上下。

然后点击Visulize就可以生成高逼格的云图了。讲解完毕,有什么需要改进的请大家留言。

源码下载:

https://github.com/forezp/ZhihuSpiderMan/tree/master/blogspider

python云图制作壮观天体照_Python爬取个人博客,带你制作高逼格的数据聚合云图...相关推荐

  1. python云图制作壮观天体照_Python爬虫,看看我最近博客都写了啥,带你制作高逼格的数据聚合云图...

    今天一时兴起,想用python爬爬自己的博客,通过数据聚合,制作高逼格的云图(对词汇出现频率视觉上的展示),看看最近我到底写了啥文章. 一.直接上几张我的博客数据的云图 1.1 爬取文章的标题的聚合 ...

  2. python 制作网站教程_Python爬取网站博客教程并制作成PDF

    要把教程变成PDF有三步: 1.先生成空html,爬取每一篇教程放进一个新生成的div,这样就生成了包含所有教程的html文件(BeautifulSoup) 2.将html转换成pdf(wkhtmlt ...

  3. python爬虫爬取csdn博客专家所有博客内容

    python爬虫爬取csdn博客专家所有博客内容: 全部过程采取自动识别与抓取,抓取结果是将一个博主的所有 文章存放在以其名字命名的文件内,代码如下 #coding:utf-8import urlli ...

  4. python 写csv scrapy_scrapy爬虫框架实例一,爬取自己博客

    本篇就是利用scrapy框架来抓取本人的博客,博客地址:http://www.cnblogs.com/shaosks scrapy框架是个比较简单易用基于python的爬虫框架,相关文档:http:/ ...

  5. 【爬虫+数据可视化】Python爬取CSDN博客访问量数据并绘制成柱状图

    以下内容为本人原创,欢迎大家观看学习,禁止用于商业及非法用途,谢谢合作! ·作者:@Yhen ·原文网站:CSDN ·原文链接:https://blog.csdn.net/Yhen1/article/ ...

  6. [python爬虫] 正则表达式使用技巧及爬取个人博客实例

    这篇博客是自己<数据挖掘与分析>课程讲到正则表达式爬虫的相关内容,主要简单介绍Python正则表达式爬虫,同时讲述常见的正则表达式分析方法,最后通过实例爬取作者的个人博客网站.希望这篇基础 ...

  7. Python 爬取51cto博客标题浏览量、评论量、收藏

    介绍 提到爬虫,互联网的朋友应该都不陌生,现在使用Python爬取网站数据是非常常见的手段,好多朋友都是爬取豆瓣信息为案例,我不想重复,就使用了爬取51cto博客网站信息为案例,这里以我的博客页面为教 ...

  8. 阮一峰老师博客爬取与博客文章存储持久化方式的思考

    阮一峰老师博客爬取与博客文章存储持久化方式的思考 前言 博客文章存储持久化思考 文本形式存储 html形式存储 pdf形式存储 博客爬取思路 爬取思路一 爬取思路二 个人选择 pdf存储 结尾 前言 ...

  9. 大屏监控系统实战(6)-爬虫初探:爬取CSDN博客之星年度总评选投票统计数据

    一.介绍 我们先来做个简单的,我们的目标是爬取CSDN博客之星年度总评选的首页信息. 首页的地址:http://m234140.nofollow.ax.mvote.cn/wxvote/43ced329 ...

最新文章

  1. 想要准备阿里/百度/腾讯/美团的面试?了解一下
  2. spring启动过程之源码跟踪(下)--spring Debug
  3. 2021 - 9 -下旬 数据结构- 线性表 -双端循环队列 - java实现
  4. WB, IHC实验问题总结与处理方案
  5. 二十五、Kaggle | 全球听众最多的50首歌曲
  6. JavaFX拖放事件
  7. 设计模式的Java 8 Lambda表达式-策略设计模式
  8. 灰度调节_网关实现灰度发布
  9. 从今天起,TensorFlow 1.9开始支持树莓派了
  10. C++ 获取当前运行程序的路径
  11. kaggle房价预测特征意思_未来销量预测——Kaggle基础方案(三):特征工程及线下验证划分...
  12. ES6 var,const , let三者区别
  13. _validate_lengths‘ from ‘numpy.lib.arraypad
  14. 使用 PHPMailer 配合 QQ邮箱 发送邮件
  15. Diablo3狗熊榜
  16. php datedif,datedif是什么函数
  17. html 大转盘游戏,HTML5 Canvas大转盘抽奖活动页面代码
  18. python 爬虫:爬取91job竞赛题库
  19. 经典风险因子模型 对于中国股票市场定价解释能力初探
  20. input如何禁止文本框输入的方法

热门文章

  1. MySQL讲义第 37 讲——LOAD DATA INFILE 命令
  2. 哇塞!清华竟然开了《摸鱼》课程!1000多学子在线摸鱼,开课老师为大一新生...
  3. centos高清分辨率
  4. 雅虎网站优化34条军规
  5. mysql清除字符空格_mysql清除数据库中字符串空格方法
  6. Java+集合系列3、骨骼惊奇之LinkedList
  7. 字节顺序-大端/小端、big-endian/little-endian
  8. 网易《心理学导论》笔记
  9. 兴趣探测的模型化探索
  10. android+仿豌豆荚界面,android仿豌豆荚风格的上滑缩放悬停title (缩放主页背景)