gpt4 book ai didi

Rust 请求 : how to wait until the page is fully loaded?

转载 作者:行者123 更新时间:2023-12-03 08:06:47 26 4
gpt4 key购买 nike

我正在尝试使用 reqwest 库获取一个网站。

问题是某些网站将在几毫秒或大约一秒内完全呈现。 (就像html渲染后加载表格元素一样)

let client = reqwest::Client::builder()
.danger_accept_invalid_certs(true)
.timeout(Duration::from_secs(5))
.connect_timeout(Duration::from_secs(2))
.user_agent("User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36")
.build()?;

let res = client.get(PROBLEM_WEBSITE).send().await?;

let body = res.text().await?;

或者像selenium一样,等到元素可见/显示?

所以我想等待一个特定的时间,但我不确定是否有办法。

res 之后尝试了 tokio::time::sleep 但显然这不是一个解决方案。

(超时,connect_timeout没有影响任何事情)

最佳答案

Reqwest 不会执行此操作,它仅加载给定 URL 处的数据,仅此而已。您要求的是浏览器在加载网页时显示的内容,其中包括加载其他资源、嵌入页面、运行脚本等。

您需要一个功能齐全的浏览器才能获得此功能,这将需要一个网络驱动程序(例如 selenium)。只是四处寻找 Rust 解决方案,也许 fantoccinichromiumoxideheadless_chrome捕获你的想象力。

关于Rust 请求 : how to wait until the page is fully loaded?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72082257/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com