xiaoyaocz / dart_simple_live

简简单单的看直播
GNU General Public License v3.0
5.14k stars 246 forks source link

[斗鱼]自动生成关注列表用于导入app #446

Open cyd opened 3 weeks ago

cyd commented 3 weeks ago

非重复的Issue

功能描述

const result = []
document.querySelectorAll("li.layout-Cover-item").forEach(it => {
    const item = {}
    item.siteId = "douyu"
    item.addTime = "2024-06-10 01:45:51.304139"
    if(it.querySelector("div[showtime]") != null) {
        //In living
        id = it.querySelector("div.DyLiveCover>a").href.replace("https://www.douyu.com/","")
        item.id = `douyu_${id}`
        item.roomId = id
        item.userName = it.querySelector("div.DyLiveCover-userName").textContent
        item.face = it.querySelector("div.DyLiveCover-avatarImg>img").src
    } else {
        //Not in living
        id = it.querySelector("a.DyCareCover").href.replace("https://www.douyu.com/","")
        item.id = `douyu_${id}`
        item.roomId = id
        item.userName = it.querySelector("div.DyLiveRecord-userName").textContent
        item.face = it.querySelector("div.DyLiveRecord-avatarImg>img").src
    }
    result.push(item)
})
JSON.stringify(result)

浏览器网页打开斗鱼关注列表,F12控制台输入代码,即可输出当前需要导入的文本(目前app版本为1.6.3) 注意不要复制到前后的2个引号。 $13ZI5PQ@VCQT(S67R7GV0V

有需要的可以自取。一点点微薄的贡献。感谢作者的开发。

平台

附加信息

No response

zuu4297 commented 1 week ago

这个只适用于斗鱼关注列表吗? 手机端simple live 的关注列表 想全部导入到电脑上也导入失败啊。。 有解决办法吗?

john5du commented 1 week ago

斗鱼的前端有变化,稍微修改了下,忽略了那些太久没播获取不到头像的主播。

const result = [];
document.querySelectorAll("li.layout-Cover-item").forEach(it => {
    const item = {}
    item.siteId = "douyu"
    item.addTime = "2024-06-10 01:45:51.304139"
    if(it.querySelector("div[showtime]") != null) {
        //In living
        id = it.querySelector("div.DyLiveCover>a").href.replace("https://www.douyu.com/","")
        item.id = `douyu_${id}`
        item.roomId = id
        item.userName = it.querySelector("div.DyLiveCover-userName").textContent
        img = it.querySelector("div.DyLiveCover-avatarImg>img")
        if(img == null) {
            img = it.querySelector("div.AvatarFrame-box>img")
        }
        item.face = img.src
    } else {
        //Not in living
        id = it.querySelector("a.DyCareCover").href.replace("https://www.douyu.com/","")
        item.id = `douyu_${id}`
        item.roomId = id
        item.userName = it.querySelector("div.DyLiveRecord-userName").textContent
        img = it.querySelector("div.DyLiveRecord-avatarImg>img")
        if(img == null) {
            return
        }
        item.face = img.src
    }
    result.push(item)
    console.log("已生成:" + item.userName + ",头像链接:" + item.face)
})
JSON.stringify(result)