首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >抓取存在某些问题的网站

抓取存在某些问题的网站
EN

Stack Overflow用户
提问于 2020-02-18 10:22:57
回答 1查看 35关注 0票数 0

我想刮this website和刮所有这位作者的文章,与Python(响应库或硒库),并将它们放在PDF文件中。

然而,当我点击底部的按钮"Show More“时,8次之后,它不再显示更多的文章,因此我无法访问所有文章(我的想法是自动化selenium,单击它直到所有文章都显示出来,然后将它们全部抓取)。有解决办法吗?我可以按时间顺序访问所有文章并抓取它们的替代方法?

我的想法是以某种方式分析链接是否来自其他来源,但我一无所知。然而,我成功地抓取了那些显示的文章。

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2020-02-18 11:46:46

使用findElements搜索<h2 class="css-1j9dxys e1xfvim30">...</h2>,它会给你一个所有书目的列表。每次单击“显示更多”时,列表的大小将增加10左右。所以这个想法是简单地点击按钮,直到列表的大小不变。使用while循环。类似于:

代码语言:javascript
运行
复制
List<WebElements> oldList = Driver.findElements(by.cssSelector("h2.css- 
    1j9dxys.e1xfvim30"));

List<WebElements> newList = new ArrayList<>();

WebElement button = Driver.findElement(by.xpath("//button[text()='Show More']"));

while(newList.size!=oldList.size){
    button.click();
    newList = List<WebElements> newList = Driver.findElements(by.cssSelector("h2.css- 
    1j9dxys.e1xfvim30));
}

我可能在代码中有一些错误,但我的想法是存在的。祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60272885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档