获取用户所有的笔记脚本
请求脚本
在chrome浏览器控制台输入。
var httpRequest = new XMLHttpRequest();//第一步:创建需要的对象
httpRequest.open('POST', 'https://m.igetget.com/native/api/homePage/topicNote', true); //第二步:打开连接
httpRequest.setRequestHeader("Content-type","application/json;charset=UTF-8");//设置请求头 注:post方式必须设置请求头(在建立连接后设置请求头)
let data={
count: 1500,
hazy: "YPA7ryGqdNlxLlqAK6xQVOpDa3e4ob",
is_only_repost: 0,
load_chain: true,
load_tag: 1,
max_createtime: parseInt(Date.now()/1000),
max_id_str: "0",
note_type: 0,
only_origin: false,
source: 0,
uid: null,
}
httpRequest.send(JSON.stringify(data));//发送请求 将情头体写在send中
/**
* 获取数据后的处理程序
*/
httpRequest.onreadystatechange = function () {//请求后的回调接口,可将请求成功后要执行的程序写在其中
if (httpRequest.readyState == 4 && httpRequest.status == 200) {//验证请求是否发送成功
var json = httpRequest.responseText;//获取到服务端返回的数据
console.log(json);
}
};
参数说明:
- haszy是用户的城邦id
- 通过用户主页获得,比如用户主页是这个:https://m.igetget.com/native/mine/account#/user/detail?enId=YPA7ryGqdNlxLlqAK6xQVOpDa3e4ob
- 那么他的城邦id就是
YPA7ryGqdNlxLlqAK6xQVOpDa3e4ob
- count是需要的笔记数量。
- note_type是笔记类型
- 0全部
- 1课程文稿划线评论
- 2课程留言
- 3针对文末重点做的笔记
- 4电子书笔记
- 5专题留言区留言
- 6未知
- 7书评
- 8转发或二次编辑过的笔记。可能表示“其它”
返回值
content_type是内容类型
- 1表示一手笔记,比如:
- 课程文稿划线评论
- 课程留言
- 专题留言
- ……
- 2是表示二手笔记,比如:
- 评论转发
- 评论的评论转发
- ……
获取Top10的笔记
- 通过“获取用户所有的笔记脚本”获取数据源
- 然后在控制台输入如下代码 ```javascript let dataSource={}; // 这里填写“获取用户所有的笔记脚本”获取的数据源 let originNoteSort = dataSource.filter(item=>{return item.origin_notes_owner.uid===0}).sort((a, b) => { return b.notes_count.like_count - a.notes_count.like_count; });
originNoteSort.length = 10; // 只要排名前10的
// 格式化结果 const result=originNoteSort.map(item=>{return { note:item.note, like:item.notes_count.like_count }})
console.log(result); ```