使用 Python 请求模拟单击“显示更多"按钮 [英] Using Python Requests to simulate clicking a 'show more' button

查看:19
本文介绍了使用 Python 请求模拟单击“显示更多"按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不确定单击显示更多"按钮要使用什么代码.我想得到一份正在做特定主题的大学名单.下面是其中一个网站

http://www.sciencedirect.com/science/article/

您的帮助将不胜感激

谢谢

解决方案

您不应该在 Python 中模拟实际单击"显示更多"按钮来完成网页抓取.

网站中的显示更多"按钮通常与某些 JavaScript 相关联,这些 JavaScript 要么显示 HTML 中已有的隐藏元素(请参阅 Bootstrap 的 collapse 典型示例)或向某些 Web 服务发出请求(例如 REST API) 用于插入DOM.

无论哪种方式,您都可以抓取该数据.对于前者,在 DOM 中找到隐藏元素(查看页面的源代码 [Ctrl + U] 并搜索 HTML [Ctrl + F]),并使用您的典型网页抓取工具.对于后者,当您单击显示更多"并尝试使用 Python 复制该请求时,请使用类似 Google Dev Tools 的网络"选项卡来检查 API 请求.

在您给出的具体示例中,您想要的数据似乎作为 JSON 对象存储在 HTML

登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆