天然语言的内容有不少,今天本文所介绍的天然语言处理部分是“文本摘要”和“关键词提取”,不少朋友都应该有本身的博客,在作博客的时候,常常会发一些文章,这些文章发出去了,有的很容易被搜索引擎检索,有的则很难,那么有没有什么方法,让博客对搜索引擎友好一些呢?这里有一个好方法:git
那就是填写网页的Description还有Keywords。难道每次都须要咱们本身去填写么?仍是说有一些奇淫巧技能够尝试。github
本文将会经过Python的jieba和snownlp进行关键词提取和文本摘要实现。sql
下载如下资源:json
https://github.com/fxsjy/jieba
https://github.com/isnowfy/snownlp复制代码
下载以后,新建文件夹,将这些文件中对应的文件拷贝:bash
拷贝以后,创建文件index.py测试
# -*- coding: utf8 -*-
import json
import jieba.analyse
from snownlp import SnowNLP
def FromSnowNlp(text, summary_num):
s = SnowNLP(text)
return s.summary(summary_num)
def FromJieba(text, keywords_type, keywords_num):
if keywords_type == "tfidf":
return jieba.analyse.extract_tags(text, topK=keywords_num)
elif keywords_type == "textrank":
return jieba.analyse.textrank(text, topK=keywords_num)
else:
return None
def main_handler(event, context):
text = event["text"]
summary_num = event["summary_num"]
keywords_num = event["keywords_num"]
keywords_type = event["keywords_type"]
return {"keywords": FromJieba(text, keywords_type, keywords_num),
"summary": FromSnowNlp(text, summary_num)}复制代码
超简单的代码有没有!优化
在SCF网页上面创建一个项目:ui
提交方法选择上传zip:搜索引擎
而后咱们压缩文件,并更名为index.zip:spa
测试以前能够适当调整一下咱们的配置:
而后进行input模板的输入:
模板能够是:
{
"text": "前来参观的人群络绎不绝。在“两弹历程馆”里,讲解员龚照怡正在给参观的学生介绍:“这是我国第一颗核航弹的模型,长3米、直径1.5米左右,后面就是它爆炸时产生的蘑菇云。”学生们一边听一边认真记录。记者看到,馆内利用声、光、电等手段,经过实物、模型、影像资料和场景复原,展示“两弹”研制工做的艰辛历程。“算盘、计算尺这些文物都是激励后人艰苦奋斗的好教材。咱们让文物‘回家’,让观众看到当年科研人员住什么样的房子,用什么样的用具,了解在那么艰苦的环境下,他们是怎样研制‘两弹’的,怎么样让中国挺起了民族的脊梁。”四川省梓潼两弹城红色旅游开发有限公司副总经理贾鲁蓉告诉记者,做为爱国主义教育基地,这里目前存有2万多份图片资料、500多万字文字资料、3000余件实物。在“两弹历程馆”的不远处是“将军楼”。1983年5月20日,时任国防部部长张爱萍将军来到长卿山视察中物院,看到科学家们在大山沟里坚苦卓绝地工做,即兴赋诗一首:“二十二年难忘情,崎岖道路信踏平。屡建奇功震寰宇,更创奇迹惊鬼神。”",
"summary_num": 5,
"keywords_num": 5,
"keywords_type": "tfidf"
}复制代码
而后点击测试:
至此,咱们完成了简单的关键词提取功能和简单的抽取式文本摘要过程,固然,这部分依旧是一个简单的抛砖引玉,由于摘要这里还有声称是文本摘要,并且抽取式摘要也可能会根据不一样的文章类型,有着不一样的特点方法,因此我这里只是经过一个简单的Demo来实现一个小功能,帮助你们作一个简单的SEO优化,你们能够在作博客的时候,增长keywords或者description字段,而后每次从sql得到文章数据的时候,将这两个部分放到meta中,会大大的提升页面被索引的几率哦~!