Node-SplderApi2 第二版
基于Node 的网络爬虫 API接口 包括前端开发日报、kugou音乐、前端top框架排行、妹纸福利、搞笑视频、段子笑话、各类视频新闻资讯 热点详情接口数据
源代码目录结构
地址
GitHub :https://github.com/ecitlm/Node-SpliderApi/tree/splider2
环境要求
需要安装node express
部署运行
1 | $ git clone https://github.com/ecitlm/Node-SpliderApi.git |
服务器启动默认端口为3001 、启动之后就可以开启了接口服务了.
接口文件1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40├─api
│ ├─it
│ │ daily_info.js
│ │ daily_list.js
│ │ web_frame.js
│ │
│ ├─joke
│ │ joke_img.js
│ │ joke_list.js
│ │ joke_photo.js
│ │
│ ├─music
│ │ new_songs.js
│ │ plist.js
│ │ plist_songs.js
│ │ rank_list.js
│ │ rank_list_info.js
│ │ search.js
│ │ singer_classify.js
│ │ singer_info.js
│ │ singer_list.js
│ │ song_info.js
│ │ song_lrc.js
│ │
│ ├─news
│ │ news_detail.js
│ │ news_list.js
│ │ video_list.js
│ │
│ └─photo
│ huaban.js
│ photo_list.js
│ photo_type.js
│ photo_view.js
│
└─web
daily_info.js
daily_list.js
index.js
photo.js
网络请求封装 httpServer.js
get
方法1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45/**
* http get网络请求封装
* @param {string} 域名
* @param {obj} 参数
* @param {string} 接口路径
* @param {bool} true false 是否为https
* @returns
*/
function httpGet(host, data, path, status) {
let options = {
host: host,
port: 80,
path: path + querystring.stringify(data),
method: 'GET',
encoding: null,
headers: {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36',
},
};
//判断是否为https请求
if (status) {
http = require('https');
options.port = 443;
}
return new Promise(function(resolve, reject) {
let body = '';
let get_req = http.request(options, function(response) {
//response.setEncoding('utf8');
response.on('data', function(chunk) {
body += chunk;
});
response.on('end', () => {
resolve(body);
});
response.on('error', err => {
reject(err);
});
});
get_req.end();
});
}
POST
方法
1 | /** |
前端开发日报接口
前端开发日报列表、单日日报、前端框架top100
最新前10天日报列表
必选参数:
无
接口地址:api/daily_list
调用例子:http://localhost:3001/api/daily_list
接口返回数据1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18{
"code": 200,
"data": [
{
"title": "20171206 前端开发日报",
"id": 20171206,
"description": "基于 Vue-cli 的 webpack 通用封装, 更易简单的开始你的项目;Webapck+Vue多页面商城模板;前端每周清单第 42 期:V8 的执行流与优化, Pinterest 的 PWA 实践, Rust 与 WebAssembl ...",
"date": "2017-12-06"
},
{
"title": "20171127 前端开发日报",
"id": 20171127,
"description": "一次 H5 「保存页面为图片」 的踩坑之旅;纯 CSS 实现波浪效果;前端本地文件操作与上传;函数声明、函数表达式、匿名函数、立即执行函数详解;Chromium 新的弹窗机制以及 HTML 的 dialog 元素;RxJS 5 中文文档;C ...",
"date": "2017-11-27"
}
],
"msg": ""
}
单日日报内容
必选参数:
日期 id
接口地址:api/daily_info/:id
调用例子:http://localhost:3001/api/daily_info/20171206
接口返回数据
1 | { |
前端框架top 100
返回前端top 100框架数据
必选参数:
无
接口地址:api/web_frame
调用例子:http://localhost:3001/api/web_frame
接口返回数据
1 | { |
笑话段子搞笑图片
笑话段子、搞笑图片
段子列表
段子列表、每页返回20条数据
必选参数:
‘page’ 页数
接口地址:/api/joke_list/:page
调用例子:http://localhost:3001/api/joke_list/1
接口返回数据1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16{
"code": 200,
"data": [
{
"title": "做了个美梦,吓醒了。~~~~割~~~~;做梦刚开始好像是抱着老婆的咪咪喊别人的名字,后来想 ",
"source": "糗事百科",
"digest": "做了个美梦,吓醒了。~~~~割~~~~;做梦刚开始好像是抱着老婆的咪咪喊别人的名字,后来想想不对啊,应该抱着别人喊老婆才对,这样老婆就会高兴了,突然就惊醒了,我的老婆在哪呢。\u0001[流鼻血]\u0001[流鼻血]\u0001[流鼻血]"
},
{
"title": "奶奶去世四十天了,生前最大的愿望就是想看到我女朋友,我的高中同学在那个医院做护士,是她帮了我这个忙,冒充了十分钟,她应该不玩段子的,还是衷心祝所有医院的天使一生平安!",
"source": "内涵段子",
"digest": "奶奶去世四十天了,生前最大的愿望就是想看到我女朋友,我的高中同学在那个医院做护士,是她帮了我这个忙,冒充了十分钟,她应该不玩段子的,还是衷心祝所有医院的天使一生平安!"
}
],
"msg": ""
}
段子图片
每天返回20条最新数据
必选参数:
‘无’
接口地址:/api/joke_img/
调用例子:http://localhost:3001/api/joke_img
接口返回数据
1 | { |
搞笑图片
每页返回10条最新数据
必选参数:
‘无’
接口地址:/api/joke_photo/:page
调用例子:http://localhost:3001/api/joke_photo/1
接口返回数据1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26{
"code": 200,
"data": [
{
"title": "牛逼了我的公交哥",
"img": "http://img.xiaoliaoba.cn/public/uploads/images/20171206/1512529717570948.png"
},
{
"title": "好污的鼠标===",
"img": "http://img.xiaoliaoba.cn/public/uploads/images/20171128/1511844635661496.png"
},
{
"title": "撩妹,都是套路,防不胜防",
"img": "http://img.xiaoliaoba.cn/public/uploads/images/20171128/1511844447422391.png"
},
{
"title": "能不能专心点?",
"img": "http://img.xiaoliaoba.cn/public/uploads/images/20171128/1511844362909028.png"
},
{
"title": "宝贝,我老公不在家",
"img": "http://img.xiaoliaoba.cn/public/uploads/images/20171124/1511508449453478.png"
}
],
"msg": ""
}
新闻资讯
新闻列表、新闻视频、新闻详情
新闻列表
新闻列表
必选参数:type
: 新闻类型
0 热点新闻 1 社会新闻 2 娱乐新闻 3体育新闻 4美文 5科技 6财经 7 时尚
名称 | 热点 | 社会 | 娱乐 | 体育 | 美文 | 科技 | 财经 | 时尚 |
接口地址:/api/news_list/:type
调用例子:http://localhost:3001/api/news_list/1
接口返回数据
1 | { |
新闻详情
每页返回10条最新数据
必选参数:
item_id
新闻列表的 item id
接口地址:/api/news_detail/:item_id
调用例子:http://localhost:3001/api/news_detail/6496307172245242381
接口返回数据
1 | { |
视频数据
必选参数:type
: 类型
0搞笑视频 1美女视频 2体育视频 3 新闻现场 4涨姿势 5猎奇 6 黑科技 默认搞笑视频
page
: 分页 如:0/10/20/30
接口地址:api/video_list/:type/:page
调用例子:http://localhost:3001/api/video_list/1/0
返回数据(由于长度就展示2条看)如下JSON:1
2
kugou音乐wap端接口数据
音乐新歌榜单、音乐歌单、排行榜、音乐详情、歌词、搜索、歌手信息、
详细可看源代码api/music
音乐新歌榜单
必选参数:
无
接口地址:api/new_songs
调用例子:http://localhost:3001/api/new_songs
接口返回数据