13-JS 导出小米便签所有内容到苹果手机

小米云服务:https://i.mi.com/

image-20201115171244850

F12,进入浏览器控制台,并点击Console标签,贴入代码,敲击回车键

image-20201115171436094

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
var text = '';
var resultArray=[];
var Ajax={
get: function(url, fn) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, false);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200 || xhr.status == 304) {
fn.call(this, xhr.responseText);
}
};
xhr.send();
}
}

function sortRule(a,b) {
return b.date.getTime()-a.date.getTime(); // [倒序]如果a>=b,返回自然数,不用交换位置
}

//下面地址中的limit参数表示最多返回200条数据,官方默认是200,最大应该也是200
//ts参数是一个时间戳,防止缓存的
function nextPage(syncTag){
var url ='https://i.mi.com/note/full/page/?ts='+(new Date()).getTime()+'&limit=200';
if(syncTag){
url += '&syncTag=' + syncTag;
}
Ajax.get(url,
function (r) {
var result = JSON.parse(r);
for(var i in result.data.entries){
let obj = result.data.entries[i];
let detailUrl = 'https://i.mi.com/note/note/'+obj.id+'/?ts='+(new Date()).getTime();
Ajax.get(detailUrl,
function (dtl) {
var detailInfo = JSON.parse(dtl).data.entry;
var date = new Date();
date.setTime(obj.createDate);

var resultObj = {};
resultObj.date=date;
resultObj.content=detailInfo.content;
resultObj.folderId=detailInfo.folderId;
resultObj.colorId=detailInfo.colorId;
resultArray.push(resultObj);
});
}

if(result.data.entries.length){
nextPage(result.data.syncTag);
}else{
resultArray.sort(sortRule);
text+="<table>";
for(let j in resultArray){
let resObj = resultArray[j];
text+="<tr class='mytr'><td class='mytd'>\n\n";
text+='<div class="card">';
text += "<div>" + dateFormat(resObj.date) +"</div>";
text += "<div style='line-height: 12px;'>-----------------------</div>";
text += "<div></div>";
text += '<div style="margin-left:0px;">' + resObj.content +'</div>';
// text += "<div>----------------------------------------</div>";
text = text.replace(/[\n\r]/g, "<br/>");
text+="</div>";
text+="</td></tr>";
}
text+="</table>";
text+=`<style>
.mytd{
padding:10px;
border-bottom: 1px solid #dedbdb;
}
.mytr{}
.card{
margin-top:30px;
}
table{}

</style>`;
document.write(text);
}
}
);



}

function dateFormat( date) {
return date.getFullYear() +"-"
+ (date.getMonth()+1).toString().padStart(2,"0") +"-"
+ date.getDate().toString().padStart(2,"0") +" "
+ date.getHours().toString().padStart(2,"0") +":"
+ date.getMinutes().toString().padStart(2,"0") +":"
+ date.getSeconds().toString().padStart(2,"0")
}

nextPage();

即可生成一个新的临时页面,按照最新时间排序展示出所有的便签内容(图片和录音无法展示)。

然后就可以 CV 到苹果手机。

效果(此截图为正序):
image-20201115171637184


13-JS 导出小米便签所有内容到苹果手机
https://janycode.github.io/2020/11/15/04_网页技术/06_JavaScript/13-JS 导出小米便签所有内容到苹果手机/
作者
Jerry(姜源)
发布于
2020年11月15日
许可协议