c# - 会话在selenium IE webdriver中过期

时间:2015-09-30 06:12:35

标签: c# selenium webdriver session-timeout

我有一个安全的网站,我需要从某些特定页面中抓取数据。该页面应严格在IE上打开。我从selenium打开了登录页面并将句柄传递给了webdriver。然后用户浏览该网站的各种页面和弹出窗口。计时器运行并检查特定页面是否打开。正在使用以下代码进行检查。

  var windowIterator = driver.WindowHandles;
  foreach (var windowHandle in windowIterator)
  {
     popup = driver.SwitchTo().Window(windowHandle);
     if (popup.Title == PageTitle) //PageTitle is string value and is saved in App Config
     {
        doWork = true; //Scraping would be started on this page
        break;
     }
  }

它非常适合测试环境中的其他网站。在实时环境中,弹出页面显示会话过期消息并询问用户凭据。一旦给出,那么它工作正常。我不知道正在抓取的网站架构。

任何机构都可以告诉我为什么会这样,以及出路是什么。

1 个答案:

答案 0 :(得分:0)

在页面更新/更改之前,可能需要花费太多时间来废弃数据。

我相信网站会为您的浏览器提供一个会话的厨师。检查网站为您提供的所有Cookie。可能这可以通过硒编辑cookie来解决。如果没有 - 您可以在比cookie的生命周期更短的时间内刷新页面,并向服务器显示"用户在这里" =)

相关问题