first commit
This commit is contained in:
1
ksAll/config/.pydio
Normal file
1
ksAll/config/.pydio
Normal file
@@ -0,0 +1 @@
|
||||
0a757647-86fa-49d6-8a71-a8c49600cda3
|
||||
235
ksAll/config/index.js
Normal file
235
ksAll/config/index.js
Normal file
@@ -0,0 +1,235 @@
|
||||
const { gql } = require("graphql-request");
|
||||
|
||||
module.exports = {
|
||||
// 快手直播,视频有版权
|
||||
url: 'https://live.kuaishou.com/live_graphql',
|
||||
// 快手官方 视频无版权
|
||||
kuaishouUrl: 'https://www.kuaishou.com/graphql',
|
||||
|
||||
|
||||
// 没有水印的 获取主播主页的视频
|
||||
visionProfilePhotoList: `https://live.kuaishou.com/live_api/profile/public`,
|
||||
|
||||
// 没有水印的 你点赞的视频
|
||||
visionProfileLikePhotoList: gql`
|
||||
fragment photoContent on PhotoEntity {
|
||||
__typename
|
||||
id
|
||||
duration
|
||||
caption
|
||||
originCaption
|
||||
likeCount
|
||||
viewCount
|
||||
commentCount
|
||||
realLikeCount
|
||||
coverUrl
|
||||
photoUrl
|
||||
photoH265Url
|
||||
manifest
|
||||
manifestH265
|
||||
videoResource
|
||||
coverUrls {
|
||||
url
|
||||
__typename
|
||||
}
|
||||
timestamp
|
||||
expTag
|
||||
animatedCoverUrl
|
||||
distance
|
||||
videoRatio
|
||||
liked
|
||||
stereoType
|
||||
profileUserTopPhoto
|
||||
musicBlocked
|
||||
}
|
||||
fragment recoPhotoFragment on recoPhotoEntity {
|
||||
__typename
|
||||
id
|
||||
duration
|
||||
caption
|
||||
originCaption
|
||||
likeCount
|
||||
viewCount
|
||||
commentCount
|
||||
realLikeCount
|
||||
coverUrl
|
||||
photoUrl
|
||||
photoH265Url
|
||||
manifest
|
||||
manifestH265
|
||||
videoResource
|
||||
coverUrls {
|
||||
url
|
||||
__typename
|
||||
}
|
||||
timestamp
|
||||
expTag
|
||||
animatedCoverUrl
|
||||
distance
|
||||
videoRatio
|
||||
liked
|
||||
stereoType
|
||||
profileUserTopPhoto
|
||||
musicBlocked
|
||||
}
|
||||
fragment feedContent on Feed {
|
||||
type
|
||||
author {
|
||||
id
|
||||
name
|
||||
headerUrl
|
||||
following
|
||||
headerUrls {
|
||||
url
|
||||
__typename
|
||||
}
|
||||
__typename
|
||||
}
|
||||
photo {
|
||||
...photoContent
|
||||
...recoPhotoFragment
|
||||
__typename
|
||||
}
|
||||
canAddComment
|
||||
llsid
|
||||
status
|
||||
currentPcursor
|
||||
tags {
|
||||
type
|
||||
name
|
||||
__typename
|
||||
}
|
||||
__typename
|
||||
}
|
||||
query visionProfileLikePhotoList(
|
||||
$pcursor: String
|
||||
$page: String
|
||||
$webPageArea: String
|
||||
) {
|
||||
visionProfileLikePhotoList(
|
||||
pcursor: $pcursor
|
||||
page: $page
|
||||
webPageArea: $webPageArea
|
||||
) {
|
||||
result
|
||||
llsid
|
||||
webPageArea
|
||||
feeds {
|
||||
...feedContent
|
||||
__typename
|
||||
}
|
||||
hostName
|
||||
pcursor
|
||||
__typename
|
||||
}
|
||||
}`,
|
||||
|
||||
// 获取展开的评论
|
||||
subCommentList: (photoId, rootCommentId, pcursor = "") => {
|
||||
return `
|
||||
{
|
||||
subCommentList(photoId: "${photoId}", rootCommentId: "${rootCommentId}", pcursor: "${pcursor}", count: 20) {
|
||||
pcursor
|
||||
subCommentsList {
|
||||
commentId,authorId,authorName,content
|
||||
headurl,timestamp,authorEid,status,replyToUserName,replyTo,
|
||||
replyToEid
|
||||
}
|
||||
}
|
||||
}`
|
||||
},
|
||||
// 获取视频相关的推荐
|
||||
RecommendFeeds: (photoId) => {
|
||||
return `
|
||||
{
|
||||
videoRecommendFeeds(photoId: "${photoId}", count: 40) {
|
||||
list {
|
||||
user {
|
||||
id,avatar,name
|
||||
},
|
||||
id,thumbnailUrl,poster,workType,type,useVideoPlayer,imgUrls,
|
||||
imgSizes,magicFace,musicName,caption,location,liked,onlyFollowerCanComment,
|
||||
relativeHeight,timestamp,width,height,
|
||||
counts {
|
||||
displayView,displayLike,displayComment
|
||||
},
|
||||
expTag
|
||||
}
|
||||
}
|
||||
}
|
||||
`
|
||||
},
|
||||
// 获取默认评论
|
||||
shortVideoCommentList: (photoId, pcursor = "") => {
|
||||
return `{
|
||||
shortVideoCommentList(photoId: "${photoId}", page: 1, pcursor: "${pcursor}", count: 100) {
|
||||
commentCount,realCommentCount,pcursor,
|
||||
commentList {
|
||||
commentId,authorId,authorName,content,headurl,timestamp,authorEid,status,
|
||||
subCommentCount,subCommentsPcursor,likedCount,liked,
|
||||
subComments {
|
||||
commentId,authorId,authorName,content,headurl,timestamp,authorEid
|
||||
status,replyToUserName,replyTo,replyToEid
|
||||
}
|
||||
}
|
||||
}
|
||||
}`
|
||||
},
|
||||
// 喜欢页面 请求参数
|
||||
likedFeeds: (pcursor = "") => {
|
||||
return `{
|
||||
likedFeeds(principalId: "geekhelp", pcursor: "${pcursor}", count: 42) {
|
||||
pcursor
|
||||
list {
|
||||
id,thumbnailUrl,poster,workType,type,useVideoPlayer,imgUrls,imgSizes,magicFace,
|
||||
musicName,caption,location,liked,onlyFollowerCanComment,relativeHeight,timestamp,width,height,
|
||||
counts {
|
||||
displayView,displayLike,displayComment
|
||||
},
|
||||
user {
|
||||
id,eid,name,avatar,
|
||||
},
|
||||
expTag
|
||||
}
|
||||
}
|
||||
}`;
|
||||
},
|
||||
// 视频真实播放地址 请求参数
|
||||
feedById: (principalId, photoId) => {
|
||||
return `{
|
||||
feedById(principalId: "${principalId}", photoId: "${photoId}") {
|
||||
currentWork {
|
||||
playUrl,poster,caption
|
||||
}
|
||||
}
|
||||
}`;
|
||||
},
|
||||
|
||||
publicFeeds: (principalId, pcursor = "", count = 24) => {
|
||||
return `{
|
||||
publicFeeds(principalId: "${principalId}", pcursor: "${pcursor}", count: ${count}) {
|
||||
pcursor,
|
||||
list {
|
||||
id,thumbnailUrl,poster,workType,type,useVideoPlayer,imgUrls,imgSizes,magicFace,musicName,
|
||||
caption,location,liked,onlyFollowerCanComment,relativeHeight,timestamp,width,height,
|
||||
counts {
|
||||
displayView,displayLike,displayComment
|
||||
},
|
||||
user {
|
||||
id,eid,name,avatar,cityName
|
||||
},
|
||||
expTag
|
||||
}
|
||||
}
|
||||
}`
|
||||
},
|
||||
likeVideo: (principalId, photoId, cancel) => {
|
||||
return `
|
||||
{
|
||||
visionVideoLike(photoId: "${photoId}", photoAuthorId: "${principalId}", cancel: ${cancel}, expTag: "1_i/2001342433838605970_xpcwebprofilexxnull0") {
|
||||
result
|
||||
}
|
||||
}
|
||||
`
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user