当前位置: 首页 > 知识库问答 >
问题:

c#-Session在selenium IE webdriver中过期

李奕
2023-03-14

我有一个安全的网站,我需要从一些特定的页面上抓取数据。页面应该严格在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个答案

亢仰岳
2023-03-14

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

我相信网站会给你的浏览器提供一个会话。检查网站提供给你的所有cookie。这可能可以通过selenium编辑cookies来解决。如果没有——您可以在cookie的生命周期内刷新页面,并向服务器显示“用户在这里”=)

 类似资料:
  • TensorFlow's public C++ API includes only the API for executing graphs, as of version 0.5. To control the execution of a graph from C++: Build the computation graph using the Python API. Use tf.train.

  • 问题: 我想在模板中使用session(比如:读取并显示session.username) 解决: 在应用程序中的代码: render = web.template.render('templates', globals={'context': session}) 在模板中的代码: <span>You are logged in as <b>$context.username</b></span

  • 由于Session是服务端对象,浏览器要想使用某个服务端的Session对象,就必须在请求消息中包含该Session对象的SessionID。该SessionID一般被放到HTTP请求消息头的Cookie字段中,Cookie名称是JSESSIONID。下面的例子揭示了通过Cookie来跟踪Session的底层技术,读者可以从该例子中充分了解Cookie和Session的关系。 例子 : 通过Coo

  • 本文向大家介绍C#程序中session的基本设置示例及清除session的方法,包括了C#程序中session的基本设置示例及清除session的方法的使用技巧和注意事项,需要的朋友参考一下 session的基本设置: 清除Session:

  • 在试图使Do/While循环工作时,我很难找到正确的语法。我想用C语言编写一个计算器,让用户输入一个字符串,然后它做它的事情并打印结果,询问用户是否想再去一次。 到目前为止,我有一个简单的main函数,只是为了让Do/While循环正确,但是当我输入Y或Y时,程序只是问我是否想再次继续,它没有给我再次运行“计算器”部分的机会。我做错了什么?

  • Session Cookie 已经能完成一次会话多次请求之间的数据共享,之前我们还提到过 Session 也可以实现, 那么: 什么是 Session? Session 如何来使用 ? Session 是如何实现的 ? Session 的使用注意事项有哪些 ?  Session 的基本使用 1. 概念 Session :服务端会话跟踪技术:将数据保存到服务端。 Session 是存储在服务端而 C