RSSHub-Radar icon indicating copy to clipboard operation
RSSHub-Radar copied to clipboard

RSSHub-Radar 如何在原来的窗口弹出新页面并且改变URL的情况下正确获取元素?

Open MisteryMonster opened this issue 4 years ago • 0 comments

我正在对Behance.net做RSS的路由,并且想通过雷达获取用户ID:

    'behance.net': {
    _name: 'Behance',
    www: [{
            title: 'User',
            docs: 'https://docs.rsshub.app/social-media.html#yong-hu-guang-bo',
            source: ['/gallery/:postid/:username', '/:user'],
            target: (params, url, document) => {
                const uid1 = document && document.querySelector('div.Project-ownerItems-2FB a');
                const uid2 = document && document.querySelector('link[href^="https://www.behance.net/"]').getAttribute('href').replace('https://www.behance.net/', '');
                return uid1 ? `/behance/${uid1.getAttribute('href').replace('https://www.behance.net/','')}` : `/behance/${uid2}`;
            },
        },
    ],
},

用户页面非弹出的作品页用这个规则都可以正常获取,但是雷达在behance.net上弹出的作品页就获取不成功,弹出页面时url是修改为了作品页,但是雷达获取的似乎还是原来的页面,即使我在控制台里都能获取到正确的结果(在behance.net上弹出的作品因为我uid2替换时末尾的斜杠没匹配上所以变成了https://www.behance.net)。

我该如何在弹出的页面上获取到uid呢?

MisteryMonster avatar Jul 13 '20 15:07 MisteryMonster