背景
为了快速了解文章重点!!
设计思路
1、根据文章链接、获取文章内容
2、编写 prompt
3、利用 markmap 显示思维导图
实现
获取文章内容
利用爬虫技术,简单利用 axios 获取链接内容,然后通过 cheerio 获取相关元素。
编码如下:
module.exports = function (url) {
// 判断链接是否为 https://juejin.cn 的文章
if (!/https:\/\/juejin\.cn/.test(url)) {
return null;
}
return new Promise((resolve,) => {
axios.get(url).then((res) => {
const $ = cheerio.load(res.data);
const content = $('.markdown-body').html();
turndownService.remove('style')
turndownService.remove('script')
turndownService.remove('img')
const markdown = turndownService.turndown(content);
const filename = $('title').text()
resolve(`TITLE: ${filename}\n${markdown}` );
});
})
}
编写 prompt
在web端利用的是 markmap ,它显示的思维导图的格式 markdown的格式,因此 prompt 在输出格式,按照这个格式相应。
大致如下:
const summaryPrompt = `
# 角色:
你是一名文章总结工作者。
# 技能:
1、阅读理解能力强;
2、个性分析与批判性思维;
3、信息筛选与整合能力;
4、简洁明了的语言表达能力;
# 任务:
根据提供的文章内容,提炼文章内容并列出一份关键洞察和最重要事实的要点清单。
# 要求:
1、生成思维导图Markdown格式;
# 最佳实践生成结果如下:
## 思维导图
---
title: markmap
---
## Links
- [Website](https://markmap.js.org/)
- [GitHub](https://github.com/gera2ld/markmap)
## Related Projects
- [Graffle](https://graffle.io/)
# 文章内容如下:
`