python - 有没有办法发送 "refresh"请求?

标签 python html python-requests

我正在尝试使用 python requests 模块和 beautifulsoup4 从网站下载文件,但问题是您必须等待 5 秒才能出现下载按钮。

我尝试使用 requests.get('URL') 获取页面,然后使用 beautifulsoup4 解析它以获取下载链接,但问题是您有等待 5 秒(如果您使用实际浏览器打开它)以便按钮出现,因此当我将 URL 传递给 requests.get() 时,初始响应对象没有我在 google 上搜索了很多按钮元素,但找不到任何对我有帮助的结果。

有没有办法“刷新”响应对象?还是“等待”?即五秒后更新其内容,就像用浏览器打开一样?

我认为请求模块不可能做到这一点。我该怎么办?

我运行的是 Windows10 64x

我是新人,如果格式不好,很抱歉。 :(

最佳答案

HTTP 是无状态的,每个新请求都会与之前的请求不同。我们通常在 cookie、浏览器存储等中实现状态。作为一个普通的 HTTP 客户端,requests 无法刷新请求,并且下一个请求将是一个完全新的请求。

您正在寻找的是一些能够理解 JavaScript 并能够自动处理页面更新的客户端。我建议你看看selenium,它可以实现浏览器自动化。

关于python - 有没有办法发送 "refresh"请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57108768/

相关文章:

python - python : undefined symbol: sqmI 的问题

python - Big Query 如何更改列模式?

python - process.communicate 和 getche() 失败

python - python scikit 中更快的数据拟合(或学习)功能

html - 保持 padding-left 与第一个元素符号行相同的自定义列表

html - 如何让图片水平显示

python-2.7 - 如何为 API 数据的 requests.get 命令传递日期参数?

html - 使用 CSS 在 HTML 页面上定位三列

python连续请求: can I use s. mount()?

javascript - 无法使用 Python 和请求模块从 .aspx 登录页面获取所需的响应