diff --git a/README.md b/README.md
index 5f135de53..f0f11d3e2 100644
--- a/README.md
+++ b/README.md
@@ -51,6 +51,8 @@ RSSHub 是一个轻量、易于扩展的 RSS 生成器,可以给任何奇奇
- 豆瓣
- 正在上映的电影
- 正在上映的高分电影
+ - 即将上映的电影
+ - 北美票房榜
## 参与我们
diff --git a/docs/README.md b/docs/README.md
index d55666085..2889ea27b 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -376,17 +376,21 @@ number: 快递单号
#### 正在上映的电影
-举例: https://rss.now.sh/douban/movie/intheaters
+举例: https://rss.now.sh/douban/movie/playing
-路由: `/douban/movie/intheaters`
+路由: `/douban/movie/playing`
参数: 无
#### 正在上映的高分电影
-举例: https://rss.now.sh/douban/movie/intheaters/7.5
+举例: https://rss.now.sh/douban/movie/playing/7.5
-路由: `/douban/movie/intheaters/:score/:city`
+路由
+
+`/douban/movie/playing/:score`
+
+`/douban/movie/playing/:score/:city`
参数
@@ -394,6 +398,22 @@ score: 返回大于等于这个分数的电影
city: 城市的中文名,可选,默认北京
+#### 即将上映的电影
+
+举例: https://rss.now.sh/douban/movie/later
+
+路由: `/douban/movie/later`
+
+参数: 无
+
+#### 北美票房榜
+
+举例: https://rss.now.sh/douban/movie/ustop
+
+路由: `/douban/movie/ustop`
+
+参数: 无
+
## 搭建
环境:需要 Node.js v7.6.0 或更高版本,若启用 Redis 缓存需要先启动 Redis
diff --git a/router.js b/router.js
index 116ce631e..45ad5592a 100644
--- a/router.js
+++ b/router.js
@@ -61,8 +61,10 @@ router.get('/mzitu/tag/:tag', require('./routes/mzitu/tag'));
router.get('/pixiv/user/:id', require('./routes/pixiv/user'));
// 豆瓣
-router.get('/douban/movie/intheaters', require('./routes/douban/intheaters'));
-router.get('/douban/movie/intheaters/:score', require('./routes/douban/intheaters'));
-router.get('/douban/movie/intheaters/:score/:city', require('./routes/douban/intheaters'));
+router.get('/douban/movie/playing', require('./routes/douban/playing'));
+router.get('/douban/movie/playing/:score', require('./routes/douban/playing'));
+router.get('/douban/movie/playing/:score/:city', require('./routes/douban/playing'));
+router.get('/douban/movie/later', require('./routes/douban/later'));
+router.get('/douban/movie/ustop', require('./routes/douban/ustop'));
module.exports = router;
diff --git a/routes/douban/later.js b/routes/douban/later.js
new file mode 100644
index 000000000..26adc5072
--- /dev/null
+++ b/routes/douban/later.js
@@ -0,0 +1,22 @@
+const axios = require('axios');
+const art = require('art-template');
+const path = require('path');
+
+module.exports = async (ctx) => {
+ const response = await axios({
+ method: 'get',
+ url: 'https://api.douban.com/v2/movie/coming_soon',
+ });
+ const movieList = response.data.subjects;
+
+ ctx.body = art(path.resolve(__dirname, '../../views/rss.art'), {
+ title: '即将上映的电影',
+ link: 'https://movie.douban.com/cinema/later/',
+ lastBuildDate: new Date().toUTCString(),
+ item: movieList.map((item) => ({
+ title: item.title,
+ description: `标题:${item.title}
影片类型:${item.genres.join(' | ')}
评分:${item.rating.stars === '00' ? '无' : item.rating.average}
`,
+ link: item.alt
+ })),
+ });
+};
\ No newline at end of file
diff --git a/routes/douban/intheaters.js b/routes/douban/playing.js
similarity index 100%
rename from routes/douban/intheaters.js
rename to routes/douban/playing.js
diff --git a/routes/douban/ustop.js b/routes/douban/ustop.js
new file mode 100644
index 000000000..2f635206f
--- /dev/null
+++ b/routes/douban/ustop.js
@@ -0,0 +1,25 @@
+const axios = require('axios');
+const art = require('art-template');
+const path = require('path');
+
+module.exports = async (ctx) => {
+ const response = await axios({
+ method: 'get',
+ url: 'https://api.douban.com/v2/movie/us_box',
+ });
+ const movieList = response.data.subjects;
+
+ ctx.body = art(path.resolve(__dirname, '../../views/rss.art'), {
+ title: '豆瓣电影北美票房榜',
+ link: 'https://movie.douban.com/chart',
+ lastBuildDate: new Date().toUTCString(),
+ item: movieList.map((item) => {
+ item = item.subject;
+ return {
+ title: item.title,
+ description: `标题:${item.title}
影片类型:${item.genres.join(' | ')}
评分:${item.rating.stars === '00' ? '无' : item.rating.average}
`,
+ link: item.alt
+ };
+ }),
+ });
+};
\ No newline at end of file