「实践」如何通过 Serverless 与自然语言处理,让搜索引擎“看” 到你的博客

「实践」如何通过 Serverless 与自然语言处理,让搜索引擎“看” 到你的博客

「Serverless 实践系列」是腾讯云 Serverless 团队策划的 SCF 云函数场景落地案例指导,旨在帮忙开发者了解 SCF 云函数可应用的场景及其实现方式。

自然语言的内容有很多,本文所介绍的自然语言处理部分是「文本摘要」和「关键词提取」。

很多朋友会有自己的博客,在博客上发文章时,这些文章发出去后,有的很容易被搜索引擎检索,有的则很难。那么有没有什么方法,让搜索引擎对博客友好一些呢?这里有一个好方法 —— 那就是填写网页的 Description 还有 Keywords。

但是每次都需要我们自己去填写,非常繁琐。这个过程能否自动化实现?本文将会通过 Python 的 jieba 和 snownlp 进行文本摘要和关键词提取的实现。

▎准备资源

下载以下资源:

下载完成后,新建文件夹,拷贝对应的文件:

拷贝之后,建立文件 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 控制台上新建一个项目:

提交方法选择上传 zip:

然后我们压缩文件,并改名为 index.zip:

▎测试

测试之前可以适当调整一下我们的配置:

然后进行 input 模板的输入:

模板可以是:

{
  "text": "前来参观的人群络绎不绝。在“两弹历程馆”里……(略)”",
  "summary_num": 5,
  "keywords_num": 5,
  "keywords_type": "tfidf"
}

然后点击测试:

▎应用

至此,我们完成了简单的关键词提取功能和抽取式文本摘要过程。

当然,这只是简单的抛砖引玉,因为摘要这里还有声称是文本摘要,而且抽取式摘要也可能会根据不同的文章类型,有着不同的特色方法,所以这里只是通过一个简单的 Demo 来实现一个小功能,帮助大家做一个简单的 SEO 优化。

大家以后自己做博客的时候,可以增加 keywords 或者 description 字段,然后每次从 sql 获得文章数据的时候,将这两个部分放到 meta 中,会大大提高页面被索引的概率哦~!

Serverless Framework 30 天试用计划

我们诚邀您来体验最便捷的 Serverless 开发和部署方式。在试用期内,相关联的产品及服务均提供免费资源和专业的技术支持,帮助您的业务快速、便捷地实现 Serverless!

详情可查阅:Serverless Framework 试用计划

One More Thing

3 秒你能做什么?喝一口水,看一封邮件,还是 —— 部署一个完整的 Serverless 应用?

复制链接至 PC 浏览器访问:serverless.cloud.tencent.com

3 秒极速部署,立即体验史上最快的 Serverless HTTP 实战开发!

传送门:

欢迎访问:Serverless 中文网,您可以在 最佳实践 里体验更多关于 Serverless 应用的开发!

编辑于 05-13

文章被以下专栏收录