diff --git a/docs/README.md b/docs/README.md
index b756eb971c..6f3fb692dc 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -553,6 +553,10 @@ RSSHub 提供下列 API 接口:
+### 美拍
+
+
+
### 雪球
diff --git a/lib/router.js b/lib/router.js
index 90a918a4cc..c57051a540 100644
--- a/lib/router.js
+++ b/lib/router.js
@@ -1040,4 +1040,7 @@ router.get('/ebb', require('./routes/ebb'));
// Indienova
router.get('/indienova/article', require('./routes/indienova/article'));
+// 美拍
+router.get('/meipai/user/:uid', require('./routes/meipai/user'));
+
module.exports = router;
diff --git a/lib/routes/meipai/user.js b/lib/routes/meipai/user.js
new file mode 100644
index 0000000000..bf1258e483
--- /dev/null
+++ b/lib/routes/meipai/user.js
@@ -0,0 +1,40 @@
+const axios = require('../../utils/axios');
+const cheerio = require('cheerio');
+const util = require('./utils');
+
+// const date = require('../../utils/date');
+
+module.exports = async (ctx) => {
+ const uid = ctx.params.uid;
+
+ const response = await axios({
+ method: 'get',
+ url: `https://www.meipai.com/user/${uid}`,
+ headers: {
+ Referer: 'https://www.meipai.com/',
+ },
+ });
+ const data = response.data;
+
+ const $ = cheerio.load(data); // 使用 cheerio 加载返回的 HTML
+ const list = $('#mediasList')
+ .find('li')
+ .get();
+ const name = $('.feed-left .content-l-h2').text();
+
+ const result = await util.ProcessFeed(list, ctx.cache);
+
+ // 使用 cheerio 选择器,选择 class="note-list" 下的所有 "li"元素,返回 cheerio node 对象数组
+ // cheerio get() 方法将 cheerio node 对象数组转换为 node 对象数组
+
+ // 注:每一个 cheerio node 对应一个 HTML DOM
+ // 注:cheerio 选择器与 jquery 选择器几乎相同
+ // 参考 cheerio 文档:https://cheerio.js.org/
+
+ ctx.state.data = {
+ title: `${name}又有更新了`,
+ link: `https://www.meipai.com/user/${uid}/`,
+ description: `${name}`,
+ item: result,
+ };
+};
diff --git a/lib/routes/meipai/utils.js b/lib/routes/meipai/utils.js
new file mode 100644
index 0000000000..a30acf7254
--- /dev/null
+++ b/lib/routes/meipai/utils.js
@@ -0,0 +1,35 @@
+const cheerio = require('cheerio');
+const url = require('url');
+
+const ProcessFeed = async (list) => {
+ const host = 'https://www.meipai.com';
+
+ return await Promise.all(
+ list.map(async (item) => {
+ const $ = cheerio.load(item);
+
+ const $title = $('.detail-cover-title');
+ const $desciption = $('.feed-description');
+
+ // 详情页面的地址(视频页面地址)
+ const itemUrl = url.resolve(host, $desciption.attr('href'));
+
+ // RSS内容(美拍提供了友好的网页版视频展示)
+ const imgSrc = $('.feed-v-wrap img').attr('src');
+ const text = $desciption.text() + `
`;
+
+ // 列表上提取到的信息
+ return {
+ title: $title.text(),
+ description: text,
+ link: itemUrl,
+ author: $('.feed-name').text(),
+ guid: itemUrl,
+ };
+ })
+ );
+};
+
+module.exports = {
+ ProcessFeed,
+};