如何在Rust的chromiumoxide库中模拟点击浏览器后退按钮?
使用chromiumoxide模拟浏览器后退操作
要模拟浏览器的后退按钮行为,你可以直接调用Page实例的go_back()方法,这和手动点击后退按钮的逻辑完全一致,无需用page.goto()硬编码上一页地址。
修改后的完整代码示例如下:
#[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { // 创建带UI的浏览器实例及处理程序 let (mut browser, mut handler) = Browser::launch(BrowserConfig::builder().with_head().build()?).await?; // 启动任务持续轮询处理程序 let handle = tokio::task::spawn(async move { while let Some(h) = handler.next().await { if h.is_err() { break; } } }); // 打开新页面并导航到维基百科 let page = browser.new_page("https://en.wikipedia.org").await?; page.wait_for_navigation().await?; // 导航到example.com page.goto("https://www.example.com/").await?; page.wait_for_navigation().await?; // 模拟点击后退按钮返回上一页 page.go_back().await?; page.wait_for_navigation().await?; browser.close().await?; handle.await; Ok(()) }
- 核心操作是
page.go_back().await?,该方法直接触发浏览器的后退行为,和手动点击后退按钮效果完全一致。 - 执行后退后同样需要调用
page.wait_for_navigation().await?,确保页面导航完成后再进行后续操作。
内容的提问来源于stack exchange,提问作者Vorpulus Lyphane
相关产品推荐
相关产品推荐

