코드 설명
유찾 코드 (되는지도 모름)
코드 사용법
엔트리 콘솔에
var getIdeal = function(){
var next_data = document.getElementById("__NEXT_DATA__");
var nj = JSON.parse(next_data.innerText);
return {csrf: nj.props.initialProps.csrfToken, xtoken: nj.props.initialState.common.user.xToken};
};
var user_find = 0;
var idl = getIdeal();
var csrfToken = idl.csrf, xtoken = idl.xtoken;
user = prompt("찾을 유저를 입력해주세요." +"");
user_id = ""
user_id1 = ""
var user_visit = 0;
var user_visit1 = 0;
var user_like = 0;
var user_like1 = 0;
var user_rank = 0;
var user_rank1 = 0;
var user_staffPick = 0;
var user_staffPick1 = 0;
var comment = 0;
var comment1 = 0;
user_id_ = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($nickname: String) {
user(nickname:$nickname) {
id
}
}
`,
variables: {
nickname: user
}
})
})).json()).data.user
var mode = 0;
if (user_id_ != null) {
mode = 1;
}
if (mode == 1) {
user_id = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($nickname: String) {
user(nickname:$nickname) {
id
}
}
`,
variables: {
nickname: user
}
})
})).json()).data.user.id;
user_find = 2;
var user_projectAll = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"CSRF-Token":csrfToken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
projectAll
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.projectAll;
var user_project = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
project
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.project;
var user_follower = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
follower
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.follower;
var user_following = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
following
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.following;
var user_bookmark_p = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
bookmark {
project,
study
}
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.bookmark.project;
var user_bookmark_s = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
bookmark {
project,
study
}
}
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.status.bookmark.study;
user_url = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
shortUrl
}
}
`,
variables: {
id: user_id
}
})
})).json()).data.userstatus.shortUrl;
var user_bookmark = user_bookmark_p + user_bookmark_s;
var user_project_P = user_projectAll - user_project;
var user_stat = {
"array": [
{"공개된 작품": user_project},
{"비공개 작품": user_project_P},
{"모든 작품": user_projectAll},
{"팔로잉": user_following},
{"팔로워": user_follower},
{"북마크": user_bookmark}
]
}
if (user_id != JSON.parse(document.getElementById("__NEXT_DATA__").innerText).props.initialState.common.user._id) {
projects = (await (await fetch("https://playentry.org/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body: JSON.stringify({
"query":"\n query SELECT_USER_PROJECTS(\n \n $user: String!\n $query: String\n $categoryCode: String\n $groupId: ID\n $pageParam: PageParam\n $isOpen: Boolean\n $except: [ID]\n $searchAfter: JSON\n $searchType: String\n $term: String\n\n ) {\n userProjectList(\n \n user: $user\n query: $query\n categoryCode: $categoryCode\n groupId: $groupId\n pageParam: $pageParam\n isOpen: $isOpen\n except: $except\n searchAfter: $searchAfter\n searchType: $searchType\n term: $term\n\n ) {\n total\n list {\n \n id\n name\n user {\n id\n username\n nickname\n profileImage {\n id\n filename\n imageType\n }\n }\n thumb\n isopen\n isPracticalCourse\n category\n categoryCode\n created\n updated\n special\n isForLecture\n isForStudy\n isForSubmit\n hashId\n complexity\n staffPicked\n ranked\n visit\n likeCnt\n comment\n\n }\n searchAfter\n }\n }\n",
"variables":{
"searchType":"scroll",
"user": user_id,
"term":"all",
"pageParam":{
"display": user_project,
"sort":"created"
}
}
})
})).json()).data.userProjectList.list
for (let i1 = 0; i1 < user_project; i1++) {
if (projects[i1].isopen == true) {
user_visit = user_visit + projects[i1].visit;
user_like = user_like + projects[i1].likeCnt;
comment = comment + projects[i1].comment;
if (projects[i1].ranked != null) {
user_rank = user_rank + 1;
}
if (projects[i1].staffPicked != null) {
user_staffPick = user_staffPick + 1;
}
}
}
}else {
projects = (await (await fetch("https://playentry.org/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body: JSON.stringify({
"query":"\n query SELECT_USER_PROJECTS(\n \n $user: String!\n $query: String\n $categoryCode: String\n $groupId: ID\n $pageParam: PageParam\n $isOpen: Boolean\n $except: [ID]\n $searchAfter: JSON\n $searchType: String\n $term: String\n\n ) {\n userProjectList(\n \n user: $user\n query: $query\n categoryCode: $categoryCode\n groupId: $groupId\n pageParam: $pageParam\n isOpen: $isOpen\n except: $except\n searchAfter: $searchAfter\n searchType: $searchType\n term: $term\n\n ) {\n total\n list {\n \n id\n name\n user {\n id\n username\n nickname\n profileImage {\n id\n filename\n imageType\n }\n }\n thumb\n isopen\n isPracticalCourse\n category\n categoryCode\n created\n updated\n special\n isForLecture\n isForStudy\n isForSubmit\n hashId\n complexity\n staffPicked\n ranked\n visit\n likeCnt\n comment\n\n }\n searchAfter\n }\n }\n",
"variables":{
"searchType":"scroll",
"user": user_id,
"term":"all",
"pageParam":{
"display": user_projectAll,
"sort":"created"
}
}
})
})).json()).data.userProjectList.list
for (let i1 = 0; i1 < user_projectAll; i1++) {
if (projects[i1].isopen == true) {
user_visit = user_visit + projects[i1].visit;
user_like = user_like + projects[i1].likeCnt;
comment = comment + projects[i1].comment;
if (projects[i1].ranked != null) {
user_rank = user_rank + 1;
}
if (projects[i1].staffPicked != null) {
user_staffPick = user_staffPick + 1;
}
}
}
}
}
user_id1_ = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($username: String) {
user(username:$username) {
id
}
}
`,
variables: {
username: user
}
})
})).json()).data.user
if (user_id1_ != null) {
mode = mode + 2;
}
if (mode > 1) {
user_id1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($username: String) {
user(username:$username) {
id
}
}
`,
variables: {
username: user
}
})
})).json()).data.user.id;
user_find = 1;
if (mode => 2) {
var user_projectAll1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"CSRF-Token":csrfToken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
projectAll
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.projectAll;
var user_project1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
project
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.project;
var user_follower1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
follower
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.follower;
var user_following1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
following
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.following;
var user_bookmark_p1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
bookmark {
project,
study
}
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.bookmark.project;
var user_bookmark_s1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
status {
bookmark {
project,
study
}
}
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.status.bookmark.study;
user_url1 = (await (await fetch("/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body:JSON.stringify({
query: `
query($id: String) {
userstatus(id: $id) {
shortUrl
}
}
`,
variables: {
id: user_id1
}
})
})).json()).data.userstatus.shortUrl;
var user_bookmark1 = user_bookmark_p1 + user_bookmark_s1;
var user_project_P1 = user_projectAll1 - user_project1;
var user_stat1 = {
"array": [
{"공개된 작품": user_project1},
{"비공개 작품": user_project_P1},
{"모든 작품": user_projectAll1},
{"팔로잉": user_following1},
{"팔로워": user_follower1},
{"북마크": user_bookmark1}
]
}
if (user_id1 != JSON.parse(document.getElementById("__NEXT_DATA__").innerText).props.initialState.common.user._id) {
projects1 = (await (await fetch("https://playentry.org/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body: JSON.stringify({
"query":"\n query SELECT_USER_PROJECTS(\n \n $user: String!\n $query: String\n $categoryCode: String\n $groupId: ID\n $pageParam: PageParam\n $isOpen: Boolean\n $except: [ID]\n $searchAfter: JSON\n $searchType: String\n $term: String\n\n ) {\n userProjectList(\n \n user: $user\n query: $query\n categoryCode: $categoryCode\n groupId: $groupId\n pageParam: $pageParam\n isOpen: $isOpen\n except: $except\n searchAfter: $searchAfter\n searchType: $searchType\n term: $term\n\n ) {\n total\n list {\n \n id\n name\n user {\n id\n username\n nickname\n profileImage {\n id\n filename\n imageType\n }\n }\n thumb\n isopen\n isPracticalCourse\n category\n categoryCode\n created\n updated\n special\n isForLecture\n isForStudy\n isForSubmit\n hashId\n complexity\n staffPicked\n ranked\n visit\n likeCnt\n comment\n\n }\n searchAfter\n }\n }\n",
"variables":{
"searchType":"scroll",
"user": user_id1,
"term":"all",
"pageParam":{
"display": user_project1,
"sort":"created"
}
}
})
})).json()).data.userProjectList.list
for (let i1 = 0; i1 < user_project1; i1++) {
user_visit1 = user_visit1 + projects1[i1].visit;
user_like1 = user_like1 + projects1[i1].likeCnt;
comment1 = comment1 + projects1[i1].comment;
if (projects1[i1].ranked != null) {
user_rank1 = user_rank1 + 1;
}
if (projects1[i1].staffPicked != null) {
user_staffPick1 = user_staffPick1 + 1;
}
}
}else {
projects1 = (await (await fetch("https://playentry.org/graphql", {
method: "POST",
headers: {
"content-type": "application/json",
"x-client-type": "Client",
"CSRF-Token":csrfToken,
"x-token": xtoken
},
body: JSON.stringify({
"query":"\n query SELECT_USER_PROJECTS(\n \n $user: String!\n $query: String\n $categoryCode: String\n $groupId: ID\n $pageParam: PageParam\n $isOpen: Boolean\n $except: [ID]\n $searchAfter: JSON\n $searchType: String\n $term: String\n\n ) {\n userProjectList(\n \n user: $user\n query: $query\n categoryCode: $categoryCode\n groupId: $groupId\n pageParam: $pageParam\n isOpen: $isOpen\n except: $except\n searchAfter: $searchAfter\n searchType: $searchType\n term: $term\n\n ) {\n total\n list {\n \n id\n name\n user {\n id\n username\n nickname\n profileImage {\n id\n filename\n imageType\n }\n }\n thumb\n isopen\n isPracticalCourse\n category\n categoryCode\n created\n updated\n special\n isForLecture\n isForStudy\n isForSubmit\n hashId\n complexity\n staffPicked\n ranked\n visit\n likeCnt\n comment\n\n }\n searchAfter\n }\n }\n",
"variables":{
"searchType":"scroll",
"user": user_id1,
"term":"all",
"pageParam":{
"display": user_projectAll1,
"sort":"created"
}
}
})
})).json()).data.userProjectList.list
for (let i1 = 0; i1 < user_projectAll1; i1++) {
if (projects1[i1].isopen == true) {
user_visit1 = user_visit1 + projects1[i1].visit;
user_like1 = user_like1 + projects1[i1].likeCnt;
comment1 = comment1 + projects1[i1].comment;
if (projects1[i1].ranked != null) {
user_rank1 = user_rank1 + 1;
}
if (projects1[i1].staffPicked != null) {
user_staffPick1 = user_staffPick1 + 1;
}
}
}
}
}
}
if (mode == 0) {
console.log("죄송합니다. \""+user+"\" 라는 닉네임/아이디를 가지신 분을 찾지 못했습니다.")
}else if (mode == 1) {
console.log('"' + user + "\" 라는 닉네임을 가지신 분을 찾았습니다! \"" + user +"\" 님의 마이페이지 링크는 " + user_url +" 입니다!");
info = confirm(user + "님의 세부정보를 보시겠습니까?")
if (info == true) {
if (user_project > 0) {
console.log(('"' + user +'"'+" 님의 총 ❤ 좋아요 수는 " + user_like + "개, 👁 조회수는 " + user_visit + "회, 💬 댓글 수는 " + comment + "개입니다! 평균적으로 약 " + String((Math.round(1000*(Number(comment)/Number(user_visit))))/10) +"\%의 사람들이 댓글을 달았군요! / 스선 " + user_staffPick + "개, 인작 " + user_rank + "개").replaceAll(" / 스선 0개, 인작 0개", "").replaceAll("스선 0개, ", "").replaceAll(", 인작 0개", "").replaceAll("NaN\%의 ", "0.0\%의 "))
}
}
}else if (mode == 2) {
console.log('"'+user+"\" 라는 아이디를 가지신 분을 찾았습니다! \""+user +"\" 님의 마이페이지 링크는 " + user_url1 +" 입니다!");
info = confirm(user + "님의 세부정보를 보시겠습니까?")
if (info == true) {
console.log(('"' + user +"\" 님의 총 ❤ 좋아요 수는 " + user_like1 + "개, 👁 조회수는 " + user_visit1 + "회, 💬 댓글 수는 " + comment1 + "개입니다! 평균적으로 약 " + String((Math.round(1000*(Number(comment1)/Number(user_visit1))))/10) +"\%의 사람들이 댓글을 달았군요! / 스선 " + user_staffPick1 + "개, 인작 " + user_rank1 + "개").replaceAll(" / 스선 0개, 인작 0개", "").replaceAll("스선 0개, ", "").replaceAll(", 인작 0개", "").replaceAll("NaN\%의 ", "0.0\%의 "))
}
}else {
if (user_url == user_url1) {
console.log('"'+user+"\"라는 닉네임과 아이디를 가지신 분을 찾았습니다. 마이페이지 링크는 " + user_url +" 입니다!");
info = confirm(user + "님의 세부정보를 보시겠습니까?")
if (info == true) {
console.log(('"' + user +"\" 님의 총 ❤ 좋아요 수는 " + user_like + "개, 👁 조회수는 " + user_visit + "회, 💬 댓글 수는 " + comment + "개입니다! 평균적으로 약 " + String((Math.round(1000*(Number(comment)/Number(user_visit))))/10) +"\%의 사람들이 댓글을 달았군요! / 스선 " + user_staffPick + "개, 인작 " + user_rank + "개").replaceAll(" / 스선 0개, 인작 0개", "").replaceAll("스선 0개, ", "").replaceAll(", 인작 0개", "").replaceAll("NaN\%의 ", "0.0\%의 "))
}
}else {
console.log("'"+user+"'라는 닉네임/아이디를 가지신 분이 2명 입니다. 닉네임: " + user_url +" ,아이디: " + user_url1 + " 입니다!");
info = confirm(user + "님의 세부정보를 보시겠습니까?")
if (info == true) {
console.log(('"' + user +'"'+" 님의 총 ❤ 좋아요 수는 " + user_like + "개, 👁 조회수는 " + user_visit + "회, 💬 댓글 수는 " + comment + "개입니다! 평균적으로 약 " + String((Math.round(1000*(Number(comment)/Number(user_visit))))/10) +"\%의 사람들이 댓글을 달았군요! / 스선 " + user_staffPick + "개, 인작 " + user_rank + "개 (닉네임)").replaceAll(" / 스선 0개, 인작 0개", "").replaceAll("스선 0개, ", "").replaceAll(", 인작 0개", "").replaceAll("NaN\%의 ", "0.0\%의 "))
console.log(('"' + user +'"'+" 님의 총 ❤ 좋아요 수는 " + user_like1 + "개, 👁 조회수는 " + user_visit1 + "회, 💬 댓글 수는 " + comment1 + "개입니다! 평균적으로 약 " + String((Math.round(1000*(Number(comment1)/Number(user_visit1))))/10) +"\%의 사람들이 댓글을 달았군요! / 스선 " + user_staffPick1 + "개, 인작 " + user_rank1 + "개 (아이디)'").replaceAll(" / 스선 0개, 인작 0개", "").replaceAll("스선 0개, ", "").replaceAll(", 인작 0개", "").replaceAll("NaN\%의 ", "0.0\%의 "))
}
}
}
코드 문의는 댓글로 해주세요.
더보기
이 코드를 사용해 일어나는 피해와 책임은 모두 사용자에게 있습니다.
'엔트리' 카테고리의 다른 글
| 엔트리 움직이는 썸네일 원터치 코드 (1) | 2024.08.03 |
|---|---|
| 엔트리 작품 악플 댓글 아이디 자동 차단 코드 (0) | 2024.08.03 |
| 엔트리 이야기 홍보 코드 (0) | 2024.08.03 |
| 엔트리 팔로워 분석 코드 (0) | 2024.08.02 |
| 엔트리 csrf-token이랑 xtoken 구하는 코드 (0) | 2024.08.02 |