平淡最真 发表于 2020-12-12 15:40

Python+Selenium

本帖最后由 平淡最真 于 2020-12-12 18:48 编辑

有些网页信息需要js加载,网页源码看不到。下面例子是可以直接网页源码获取的   只是举个例子。

比如我想得到52的50个新帖子的标题https://www.52pojie.cn/forum.php?mod=guide&view=newthread
print(driver.execute_script('return document.getElementsByClassName("common").outerText')+"\n")
这样可以得到第一个帖子主题。我想写个for循环   但是把0替换为变量后好像js执行不了,不知道怎么改上面这句代码。求大神。

祝福看到你 发表于 2020-12-12 17:01

for i in range(50):
    print(driver.execute_script('return document.getElementsByClassName("common")[%s].outerText' % i)+"\n")

ReLoading 发表于 2020-12-12 17:06

function getTxt(){
        let dom = document.querySelectorAll('.common');
        let txt = '';
        for(let i of dom){
                txt +=`${i.outerText}\n`;
        }
        return txt;
}
页: [1]
查看完整版本: Python+Selenium