原文转载自「刘悦的技术博客」https://v3u.cn/a_id_138

其实很早以前就想搞一套完备的标签云架构了,迫于没有时间(其实就是懒),一直就没有弄出来完整的代码,说到底标签对于网站来说还是很重要的,它能够对一件事物产生标志性描述,通常都会采用相关性很强的关键字,这样不仅便于检索和分类,同时对网站的内链体系也是有促进作用的。

最近疫情的关系一直在家里呆着,闲暇时和一些学生聊天的时候,人家问:你说你一直在写博客,那你到底在写一些什么内容的文章呢?我竟然一时语塞,于是搞出来下面这种的标签云,下回被问同样的问题时,就可以展示一下了。

和传统的在线博客标签云最大的区别在于,这些标签并不是我手动打上去的,因为时间有限,每写一篇文章就自己提取很多关键字出来,还得挨个入库,这件事想想就很痛苦,于是写脚本自动提取关键字,再综合所有文章的标题得出。

这里用到的技术点就是基于python3.7的结巴分词中的提取关键词,首先进行安装

pip3 install jieba

结巴分词基于TF-IDF关键词提取算法

TF-IDF是关键词提取最基本、最简单易懂的方法。判断一个词再一篇文章中是否重要,一个最容易想到的衡量指标就是词频,重要的词往往在文章中出现的频率也非常高;但另一方面,不是出现次数越多的词就一定重要,因为有些词在各种文章中都频繁出现(例如:我们),那它的重要性肯定不如哪些只在某篇文章中频繁出现的词重要性强。从统计学的角度,就是给予那些不常见的词以较大的权重,而减少常见词的权重,最终得分较高的词语即为关键词。

与此同时,结巴分词还可以帮你过滤那些无意义的虚词,类似「的、地、得、着、了、过」这种

代码如下:

import jieba.analyse

data = "其实很早以前就想搞一套完备的标签云架构了,迫于没有时间(其实就是懒),一直就没有弄出来完整的代码,说到底标签对于网站来说还是很重要的,它能够对一件事物产生标志性描述,通常都会采用相关性很强的关键字,这样不仅便于检索和分类,同时对网站的内链体系也是有促进作用的。最近疫情的关系一直在家里呆着,闲暇时和一些学生聊天的时候,人家问:你说你一直在写博客,那你到底在写一些什么内容的文章呢?我竟然一时语塞,于是搞出来下面这种的标签云,下回被问同样的问题时,就可以展示一下了。"
for keyword, weight in jieba.analyse.extract\_tags(data, withWeight=True):
print('%s %s' % (keyword, weight))

默认会直接提取前20个关键词,按照权重倒序:

标签 0.36316568234921054
一直 0.17986207627776318
网站 0.17220419499
内链 0.15729957240657894
弄出来 0.13730186512105264
语塞 0.13539157551710526
其实 0.13493691317526316
下回 0.1301755850886842
很早以前 0.12859925351223683
关键字 0.1277766172361842
检索 0.1236956313375
闲暇 0.1223093087630263
标志性 0.12002044945868422
迫于 0.11836056412552631
相关性 0.11816706218618422
架构 0.11760306607526315
促进作用 0.11620754539157895
说到底 0.11464857692289475
博客 0.11084492236894737
聊天 0.11041170151776317

看起来还是相当靠谱。

如果你需要修改关键词数量,可以指定topK参数,输入几个就返回几个

那么只要在文章提交时加入上面的脚本,就可以每一次都自动生成关键词了,当然了,关键词的存储结构设计也是一个难题,有时间会探讨一下。

有了文章和关键词的关联关系,那么就剩下前端的展示,这里推荐一下台湾同胞写的一个控件:https://github.com/timdream/wordcloud2.js

效果还是非常赞的,该插件作者谦逊的说自己”可能“是最好的标签云插件,不过我个人认为可能这两个字完全可以去掉了,它就是最好的。

那么wordcloud2.js使用起来也非常简单,导入js文件后,按照官方文档使用即可,这里附上代码

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Demo</title>
</head>
<style>
#container{
width: 1000px;
margin: 100px auto;
border: 1px solid #ccc;
}
</style>
<body>
<h1>一般</h1>
<div id="container" style="height: 500px;"></div>
<!-- <h1>无数据</h1>
<div id="container1" style="height: 400px;"></div> -->
<script src="./wordcloud2.min.js"></script>
<script>
var wordFreqData = \[\['使用', 28, 114\], \['Mac', 17, 107\], \['Python', 15, 1\], \['实现', 13, 121\], \['python3.7', 13, 157\], \['Django2.0', 12, 283\], \['利用',11, 202\], \['阿里', 10, 187\], \['开发', 10, 230\], \['关于', 10, 51\], \['文件', 9, 215\], \['基于', 9, 199\], \['Centos7.6', 9, 455\], \['配置', 9, 141\], \['部署', 8, 323\], \['Docker', 8, 479\], \['系统', 8, 112\], \['vue', 8, 425\], \['异步', 8, 162\], \['服务', 8, 356\], \['安装', 7, 102\], \['nginx', 7, 195\], \['微信', 7, 707\], \['程序', 7, 711\], \['进行', 7, 381\], \['问题', 7, 52\], \['上传', 6, 171\], \['mysql', 6, 86\], \['以及', 6, 446\], \['一个', 6, 14\], \['响应', 5, 54\], \['compose', 5, 685\], \['python3', 5, 414\], \['Django', 5, 219\], \['搭建', 5, 514\], \['性能', 5, 9\], \['功能', 5, 119\], \['环境', 5, 231\], \['OS', 4, 123\], \['遇到', 4, 4\], \['检测', 4, 41\], \['配合', 4, 200\], \['redis', 4, 290\], \['网站', 4, 324\], \['页面', 4, 46\], \['记录', 4, 27\], \['Tornado', 4, 588\], \['测试', 4, 377\], \['接口', 4, 399\], \['操作', 4, 31\], \['js', 4, 207\], \['前端', 4, 432\], \['应用', 4, 78\], \['centos', 4, 100\], \['解决方案', 3, 35\], \['登录', 3, 361\], \['js2.6', 3, 464\], \['项目', 3, 552\], \['Flask', 3, 252\], \['商城', 3, 341\], \['实时', 3, 342\], \['视频', 3, 471\], \['面试', 3, 626\], \['api', 3, 884\], \['设计', 3, 58\], \['打造', 3, 198\], \['切换', 3, 155\], \['分离', 3, 561\], \['最新', 3, 64\], \['如何', 3, 130\], \['爬虫', 3, 45\], \['结合', 3, 371\], \['框架', 3, 26\], \['自己', 3, 204\], \['支付宝', 3, 397\], \['布局', 3, 70\], \['博客', 3, 186\], \['模式', 3, 529\], \['并且', 3, 190\], \['支付', 3, 401\], \['代码', 3, 15\], \['Go', 2, 192\], \['Linux', 2, 438\], \['Lang', 2, 193\], \['集成', 2, 410\], \['Windows', 2, 439\], \['ffmpeg', 2, 470\],\['全文检索', 2, 727\], \['Redisearch', 2, 728\], \['变量', 2, 39\], \['celery', 2, 315\], \['添加', 2, 343\], \['Centos7', 2, 413\], \['模块', 2, 21\], \['各种', 2, 84\], \['静态', 2, 197\], \['跨域', 2, 284\], \['读写', 2, 558\], \['前后', 2, 700\], \['自定义', 2, 794\], \['存储', 2, 888\],\['Home', 2, 288\], \['服务器', 2, 321\], \['统一', 2, 701\], \['github', 2, 23\], \['Brew', 2, 289\], \['FastDfs', 2, 513\], \['管理', 2, 704\], \['中文', 2, 87\], \['版本', 2, 156\], \['mpvue', 2, 706\], \['方案', 2, 65\], \['属于', 2, 201\], \['文档', 2, 222\], \['Tornado5.1', 2, 158\], \['https', 2, 184\], \['下载', 2, 223\], \['方法', 2, 10\], \['移动', 2, 69\], \['引擎', 2, 92\], \['不要', 2, 113\], \['h5', 2, 329\], \['并发', 2, 374\], \['一下', 2, 28\], \['Selenium', 2, 139\], \['Rabbitmq3.7', 2, 160\], \['插件', 2, 205\], \['通过', 2, 226\], \['Mongodb', 2, 297\], \['删除', 2, 332\], \['新版', 2, 398\], \['excel', 2, 30\], \['美多', 2, 335\], \['集群', 2, 767\], \['用来', 2, 13\], \['适应', 2, 74\], \['总结', 2, 303\], \['压力', 2, 379\], \['播放', 2, 490\], \['上面', 2, 542\], \['可用', 2, 770\], \['技巧', 2, 98\], \['js2.0', 2, 945\], \['Scrapy', 2, 144\], \['过程', 2, 191\], \['http', 2, 209\], \['推送', 2, 339\], \['Supervisor', 2, 497\], \['工具', 1, 16\], \['之子', 1, 53\], \['FLOAT', 1, 79\], \['python2.7', 1, 101\], \['Operation', 1, 145\], \['快捷键', 1, 166\], \['压缩', 1, 211\], \['图形化', 1, 233\], \['中文翻译', 1, 251\], \['password', 1, 276\], \['Score', 1, 307\], \['客服', 1, 340\], \['vscode', 1, 383\], \['2019.04', 1, 406\], \['监控', 1, 499\], \['tree', 1, 599\], \['localStorage', 1, 624\], \['格式', 1, 649\], \['个人', 1, 678\], \['这样', 1, 725\], \['mpvue1.0', 1, 780\], \['双机', 1, 825\], \['浏览器', 1, 857\], \['加上', 1, 881\], \['截说', 1, 919\], \['云云', 1, 950\], \['验证码', 1, 996\], \['检查', 1, 17\], \['显示', 1, 36\], \['坍塌', 1, 80\], \['预装', 1,122\], \['permitted', 1, 146\], \['五年', 1, 169\], \['请求', 1, 212\], \['git', 1, 234\], \['YES', 1, 277\], \['大名鼎鼎', 1, 308\], \['密码', 1,362\], \['中为', 1, 384\], \['各类', 1, 501\], \['master', 1, 555\], \['前缀', 1, 600\], \['弄清楚', 1, 625\], \['电子书', 1, 650\], \['协程', 1, 789\], \['keepalived', 1, 828\], \['从无到有', 1, 858\], \['七牛云', 1, 883\], \['简短', 1, 921\], \['sublime3', 1, 957\], \['百度', 1, 998\], \['MySQLdb', 1, 19\], \['成员', 1, 37\], \['数目', 1, 55\], \['原理', 1, 82\], \['Anaconda', 1, 103\], \['shell', 1, 148\], \['Hugo', 1, 194\], \['效率', 1, 213\], \['界面', 1, 235\], \['手册', 1, 253\], \['进入', 1, 282\], \['制度', 1, 309\], \['记住', 1, 363\], \['误报', 1, 386\], \['Centos6', 1, 412\], \['pip', 1, 440\], \['uwsgi', 1, 506\], \['slave', 1, 556\], \['索引', 1, 601\], \['10g', 1, 654\], \['反向', 1, 696\], \['原生', 1, 792\],\['热备', 1, 829\], \['调试', 1, 859\], \['阐述', 1, 922\], \['win10', 1, 958\], \['模拟', 1, 1001\], \['import', 1, 2\], \['autocommit', 1, 20\],\['元素', 1, 57\], \['居中', 1, 83\], \['东西', 1, 104\], \['10.11', 1, 124\], \['脚本', 1, 149\], \['千万', 1, 173\], \['推荐', 1, 236\], \['虚拟环境', 1, 256\], \['常用', 1, 364\], \['专属', 1, 387\], \['缓存', 1, 441\], \['针对', 1, 472\], \['负载', 1, 508\], \['主从', 1, 557\], \['原则', 1, 602\], \['场景', 1, 627\], \['50g', 1, 655\], \['代理', 1, 697\], \['交互', 1, 736\], \['阻塞', 1, 793\], \['上用', 1, 836\], \['谷歌', 1, 860\], \['切分', 1, 886\], \['事务', 1, 923\], \['vue2.0', 1, 960\], \['镜像', 1, 1003\], \['惨案', 1, 3\], \['函数', 1, 40\], \['发现', 1, 105\], \['El', 1, 125\], \['知识', 1, 151\], \['涉及', 1, 174\], \['减少', 1, 216\], \['双撇号', 1, 238\], \['之中', 1, 258\], \['那些', 1, 317\], \['通信', 1, 344\], \['文本编辑', 1, 366\], \['语法', 1, 388\], \['节约', 1, 442\], \['一些', 1, 475\], \['均衡', 1, 510\], \['联合', 1, 603\], \['彻底', 1, 628\],\['1t', 1, 656\], \['高性能', 1, 737\], \['抓包', 1, 837\], \['半小时', 1, 861\], \['拍云', 1, 925\], \['注册码', 1, 961\], \['下载速度', 1, 1004\], \['15', 1, 22\], \['笔记', 1, 59\], \['乱码', 1, 85\], \['Capitan', 1, 126\], \['共存', 1, 154\], \['业务', 1, 175\], \['提高', 1, 218\], \['关键字', 1, 239\], \['SQLAlchemy', 1, 261\], \['主动', 1, 346\], \['KindEditor', 1, 368\], \['提醒', 1, 390\], \['神坑', 1, 415\], \['用以', 1, 444\], \['直播', 1, 478\], \['分布式文件系统', 1, 512\], \['数据库', 1, 559\], \['单元测试', 1, 608\], \['区别', 1, 629\], \['花式', 1, 657\], \['虚假', 1, 743\], \['CSS3', 1, 795\], \['Charles', 1, 838\], \['一款', 1, 862\], \['扫码', 1, 893\], \['cdn', 1, 926\], \['破解', 1, 962\], \['Homebrew',1, 1007\], \['遍历', 1, 6\], \['是否', 1, 42\], \['适配', 1, 62\], \['默认', 1, 109\], \['升级', 1, 128\], \['公司', 1, 177\], \['保留', 1, 240\], \['基础', 1, 264\], \['win', 1, 348\], \['4.1', 1, 369\], \['防止', 1, 391\], \['处理', 1, 416\], \['空间', 1, 445\], \['mock', 1, 609\], \['架构图', 1, 631\], \['读取', 1, 658\], \['真实', 1, 744\], \['暗黑', 1, 796\], \['抓取', 1, 840\], \['扩展', 1, 863\], \['第三方', 1, 896\], \['全网', 1, 927\], \['2020', 1, 971\], \['换成', 1, 1009\], \['字典', 1, 7\], \['py', 1, 24\], \['存在', 1, 44\], \['倒霉', 1, 110\], \['dict', 1, 179\], \['xlwt', 1, 220\], \['对于', 1, 242\], \['优酷', 1, 265\], \['Process', 1, 350\], \['11', 1, 370\], \['2019', 1, 394\], \['kindeditor4.11', 1, 419\], \['rtmp', 1, 481\], \['谈谈', 1, 566\], \['cProfile', 1, 610\], \['搞清楚', 1, 633\], \['Authentication', 1, 664\], \['容器', 1, 749\], \['属性', 1,798\], \['水印', 1, 841\], \['关联', 1, 867\], \['Picture', 1, 898\], \['评测', 1, 928\], \['攻略', 1, 972\], \['国内', 1, 1011\], \['对比', 1, 8\], \['受欢迎', 1, 25\], \['终端', 1, 88\], \['最好', 1, 111\], \['pytest', 1, 133\], \['key', 1, 180\], \['情况', 1, 243\], \['大误', 1, 266\], \['守护', 1, 291\], \['协议', 1, 325\], \['Worker', 1, 351\], \['私钥', 1, 395\], \['解决', 1, 423\], \['3.7', 1, 448\], \['推流', 1, 483\], \['Hbuilder', 1, 524\], \['优化', 1, 567\], \['轻量', 1, 613\], \['绘制', 1, 635\], \['Basic', 1, 665\], \['flex', 1, 754\], \['celery4.1', 1, 804\], \['高清', 1, 842\], \['尝试', 1, 868\], \['画中画', 1, 899\], \['免费', 1, 929\], \['机器人', 1, 974\], \['增加', 1, 1012\], \['转载', 1, 68\], \['查看', 1, 89\], \['setuptools', 1, 134\], \['出现', 1, 244\], \['几年', 1, 267\], \['进程', 1, 293\], \['Uploadify3.0', 1, 328\], \['exited', 1, 352\], \['ApacheBench', 1, 373\], \['公钥', 1, 396\], \['Alipay', 1, 449\], \['Video', 1, 485\], \['app', 1, 525\], \['具体', 1, 570\], \['Hexo', 1, 614\],\['怎样', 1, 636\], \['Auth', 1, 666\], \['弹性', 1, 757\], \['封装', 1, 807\], \['软件', 1, 844\], \['公众', 1, 869\], \['技术', 1, 907\], \['加速', 1, 930\], \['递归', 1, 978\], \['禁止', 1, 47\], \['wget', 1, 135\], \['Celery3.1', 1, 159\], \['解析', 1, 185\], \['方式', 1, 225\], \['弹指一挥间', 1, 245\], \['Access', 1, 270\], \['设置', 1, 294\], \['exitcode', 1, 353\], \['resource', 1, 427\], \['refund', 1, 450\], \['播放器', 1, 486\], \['混合', 1, 528\], \['Siege', 1, 573\], \['高逼格', 1, 615\], \['到底', 1, 637\], \['Oauth2', 1, 667\], \['9012', 1, 715\], \['Sentinel', 1, 765\], \['架构', 1, 808\], \['手机', 1, 846\], \['消息', 1, 874\], \['opencv4.1', 1, 910\], \['长期', 1, 932\], \['层级', 1, 983\], \['装逼', 1, 11\], \['控件', 1, 48\], \['sql', 1, 95\], \['宴席', 1, 246\], \['denied', 1, 271\], \['duplicate', 1, 354\], \['秒杀', 1, 375\], \['绑定', 1, 429\], \['退款', 1, 452\], \['挂载', 1, 487\], \['简易', 1, 617\], \['支撑', 1, 638\], \['jwt', 1, 668\], \['Thrift', 1, 716\], \['哨兵', 1, 766\], \['面试题', 1, 811\], \['体验版', 1, 847\], \['live2d', 1, 875\], \['人脸识别', 1, 911\], \['Apache', 1, 936\], \['组件', 1, 984\], \['利器', 1, 12\], \['选择器', 1, 49\], \['异同', 1, 72\], \['排序', 1, 96\], \['vim', 1, 115\], \['Webdriver', 1, 140\], \['16', 1, 161\], \['grunt', 1, 206\], \['rails', 1, 228\], \['不散', 1, 247\], \['user', 1, 272\], \['常用命令', 1, 302\], \['下面', 1, 355\], \['双向', 1, 431\], \['分发', 1, 489\], \['分布式', 1, 538\], \['MindMaster', 1, 593\], \['建立', 1, 618\], \['互转', 1, 641\], \['认证', 1, 669\], \['RPC', 1, 717\], \['Weui', 1, 813\], \['openId', 1, 849\], \['博君', 1, 876\], \['人脸', 1, 912\], \['httpd', 1, 937\], \['无限', 1, 985\], \['checkbox', 1, 50\], \['查询', 1, 97\], \['自动', 1, 118\], \['迁移', 1, 188\], \['感恩', 1, 248\], \['root', 1, 273\], \['websocket', 1, 337\], \['生成', 1, 400\], \['nginx1.16', 1, 456\], \['导图', 1, 594\], \['session', 1, 621\], \['word', 1, 643\], \['进化', 1, 670\], \['拯救', 1, 720\], \['题库', 1, 814\], \['获取', 1, 850\], \['挂件', 1,877\], \['模型', 1, 913\], \['上将', 1, 940\], \['分类', 1, 986\], \['中文字体', 1, 33\], \['rem', 1, 75\], \['报错', 1, 142\], \['队列', 1, 163\],\['css', 1, 208\], \['六年', 1, 249\], \['localhost', 1, 274\], \['等级分', 1, 304\], \['聊天室', 1, 338\], \['Iterm', 1, 359\], \['机制', 1, 434\], \['uwsgi2.0', 1, 457\], \['网络', 1, 492\], \['Jenkins', 1, 545\], \['脑图', 1, 595\], \['cookie', 1, 622\], \['pdf', 1, 644\], \['用户', 1, 671\], \['传统', 1, 722\], \['Motor', 1, 773\], \['正式', 1, 819\], \['不到', 1, 852\], \['一晒', 1, 878\], \['训练', 1, 914\], \['结构', 1, 988\], \['绘图', 1, 34\], \['完成', 1, 120\], \['任务', 1, 164\], \['版本控制', 1, 232\], \['没有', 1, 250\], \['using', 1, 275\], \['Elo', 1, 306\], \['账号', 1, 360\], \['语法错误', 1, 382\], \['最新版', 1, 403\], \['安装包', 1, 436\], \['18', 1, 458\], \['自动化', 1, 549\], \['思维', 1, 596\], \['sessionStorage', 1, 623\], \['兼容', 1, 648\], \['Pelican', 1, 673\], \['需要', 1, 724\], \['提高效率', 1, 777\], \['发布', 1, 822\], \['Chrome', 1, 856\], \['动态', 1, 879\], \['特征', 1, 915\], \['七牛', 1, 948\], \['ai', 1, 993\]\];
var canvas = document.getElementById('container');
var options = eval({
"list": wordFreqData,
"gridSize": 9, // 密集程度 数字越小越密集
"word":'v3u',
//"shape" : "pentagon",
drawOutOfBound: false,
fontWeight:700,
maxRotation: 40 \* Math.PI / 180,
minRotation: -40 \* Math.PI / 180,
drawMask: false,
"weightFactor": 1,
"color": 'random-light', // 字体颜色 'random-dark' 或者 'random-light'
"backgroundColor": 'black', // 背景颜色
"rotateRatio": 1, // 字体倾斜(旋转)概率,1代表总是倾斜(旋转)
click: function(item) {
alert(item\[0\] + ': ' + item\[2\]);
}
});
//生成
WordCloud(canvas, options);
</script>
</body>
</html>

原文转载自「刘悦的技术博客」 https://v3u.cn/a_id_138

Python3.7+jieba(结巴分词)配合Wordcloud2.js来构造网站标签云(关键词集合)的更多相关文章

  1. Python3.7+Django2.0.4配合Mongodb打造高性能高扩展标签云存储方案

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_141 书接上回,之前有一篇文章提到了标签云系统的构建:Python3.7+jieba(结巴分词)配合Wordcloud2.js来构 ...

  2. solr+jieba结巴分词

    为什么选择结巴分词 分词效率高 词料库构建时使用的是jieba (python) 结巴分词Java版本 下载 git clone https://github.com/huaban/jieba-ana ...

  3. python调用jieba(结巴)分词 加入自定义词典和去停用词功能

    把语料从数据库提取出来以后就要进行分词啦,我是在linux环境下做的,先把jieba安装好,然后找到内容是build jieba PKG-INFO setup.py test的那个文件夹(我这边是ji ...

  4. js实现动态球形标签云

    HTML 原文演示地址:http://www.17sucai.com/pins/demoshow/8108 <!DOCTYPE html PUBLIC "-//W3C//DTD XHT ...

  5. jieba结巴分词

    pip install jieba安装jieba模块 如果网速比较慢,可以使用豆瓣的Python源:pip install -i https://pypi.douban.com/simple/ jie ...

  6. 纯JS实现的3D标签云,不依赖不论什么第三方库,支持移动页面

    <span style="font-family: Arial, Helvetica, sans-serif;"><!DOCTYPE html PUBLIC &q ...

  7. python3.6下安装结巴分词需要注意的地方

    近期,在安装结巴分词的时候遇到一些问题,纠结了好一阵,跟大家分享下,希望能有所帮助.先说下安装环境: windows7, 64位系统 python3.6,python3.5在结巴分词的官方github ...

  8. Python pytagcloud 中文分词 生成标签云 系列(一)

    转载地址:https://zhuanlan.zhihu.com/p/20432734工具 Python 2.7 (前几天试了试 Scrapy 所以用的 py2 .血泪的教训告诉我们能用 py3 千万别 ...

  9. 结巴(jieba)分词

    一.介绍: jieba: “结巴”中文分词:做最好的 Python 中文分词组件 “Jieba” (Chinese for “to stutter”) Chinese text segmentatio ...

随机推荐

  1. 使用用户名密码或ssl证书获取zabbix-api token,批量操作管理zabbix-server

    概述 Zabbix API 允许你以编程方式检索和修改 Zabbix 的配置,并提供对历史数据的访问.它广泛用于: 创建新的应用程序以使用Zabbix: 将Zabbix与第三方软件集成: 自动执行常规 ...

  2. awd平台搭建及遇到的问题

    1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...

  3. [SQLServer]NetCore中将SQLServer数据库备份为Sql脚本

    NetCore中将SQLServer数据库备份为Sql脚本 描述: 最近写项目收到了一个需求, 就是将SQL Server数据库备份为Sql脚本, 如果是My Sql之类的还好说, 但是在网上搜了一大 ...

  4. Unity-UGUI-无限循环列表

    前言:项目准备新增一个竞技场排行榜,策划规定只显示0-400名的玩家.我一想,生成四百个游戏物体,怕不是得把手机给卡死?回想原来在GitHub上看到过一个实现思路就是无限循环列表,所以就想自己试试.公 ...

  5. 用树莓派USB摄像头做个监控

    [前言] 看着阴暗的角落里吃灰噎到嗓子眼的树莓派,一起陪伴的时光历历在目,往事逐渐涌上心头,每每触及此处,内心总会升腾起阵阵怜悯之情... 我这有两个设备,一个是积灰已久的树莓派,另一个是积灰已久的U ...

  6. JZOJ5384. 【NOIP2017提高A组模拟9.23】四维世界

    题目 Description 众所周知,我们常感受的世界是三维的. Polycarp突然对四维空间产生了兴趣,他想对四维空间进行一些研究.但是在此之前,他必须先对三维世界了解透彻. 于是Polycar ...

  7. 互联网公司目标管理OKR和绩效考核的误区

    最近看了一篇关于「谷歌放弃OKR,转向全新的GRAD系统」的文章,我转到了研发效能DevOps的微信群里,结果引起了大家热烈的讨论,正好我们也在使用 OKR,所以也来谈谈我的理解以及我们应用起来的实际 ...

  8. idea 中菜单栏定位到类的图标消失(小齿轮按钮)

    本文链接:https://www.cnblogs.com/hchengmx/p/14533349.html 在2019.2以及以下版本 勾选:Autoscroll from source: 在2019 ...

  9. 集成学习——Adaboost(手推公式)

  10. 使用阿里云RDS for SQL Server性能洞察优化数据库负载-初识性能洞察

    简介 数据库性能调优通常需要较高数据库水平,并伴随较多的前期准备工作,比如收集各种性能基线.不同种类的性能指标.慢SQL日志等,这通常费时费力且效果一般,当面对多个数据库时总体拥有成本会大幅增加.今天 ...