当前位置: 首页 > 面试题库 >

是否可以在selenium.webdriver和request.session之间“转移”会话

上官鸿祯
2023-03-14
问题内容

从理论上讲,如果我将所有cookie从selenium的webdriver对象复制到requests.Session对象,那么请求是否能够继续进行,就好像会话没有中断一样?

具体来说,我对编写自动化感兴趣,我可以通过Selenium到达网页上的特定位置,然后将特定的下载链接传递到requests,该链接将下载并验证文件中特定字节的内容,有时甚至是完整文件。(下载的文件的值将根据我在selenium中的相互作用而变化)


问题答案:

是的,肯定可以。以下代码段也应有所帮助-

headers = {
"User-Agent":
    "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36"
}
s = requests.session()
s.headers.update(headers)

for cookie in driver.get_cookies():
    c = {cookie['name']: cookie['value']}
    s.cookies.update(c)


 类似资料:
  • 问题内容: 假设我有两种类似的类型设置为: 知道它们具有相同的字段,是否有直接的方法将值从类型1写入类型2?(除了编写将所有字段从源复制到目标的循环外) 谢谢。 问题答案: 对于您的特定示例,您可以轻松地将其转换:

  • 如文件所述: 优先级不能从非必需变为必需,也不能从必需变为非必需。 然而,当我试图这样做的时候,我成功了。下面是我的示例代码: 我创建了一个和一个。有两个约束。一个优先级为(默认),另一个优先级为。 然后,当用户单击该按钮时,我将更改的优先级: 这在iOS13和iOS14模拟器上都能正常工作,而不像文档中描述的那样: 如果macOS中的required优先级或iOS中的UILayoutPriori

  • 问题内容: 我在一个具有不同进程的应用程序上工作,并被要求包含那些进程以实现更多隔离。 问题在于,进程与单个“管理程序”进程共享内存以便交换数据(它们使用经典的共享缓冲区)。该解决方案是为满足性能要求而实施的,因为它在用户空间中运行,因此在用户空间和内核空间之间没有内容切换。 如果我没看错,则不可能在单个IPC名称空间内运行多个docker容器,但是我不知道单个docker容器是否可能属于不同的I

  • 我正在开发一个Android应用程序,它读取NFC标签,检索NDEF消息,然后将其传递给WebView activity以显示那个URL网站。我正在检查Logcat,并且正在读取URL,但我认为URL没有被传递,因为我得到以下错误: 这是主要活动: 这是Webview activity,它应该获取URL并加载它: 我想获取从标记接收到的URL到 稍后将加载网站。谢谢你的帮助。

  • 问题内容: 我在同一页面上有两个不同的应用程序。 我可以通过服务(或其他方式)在这两个应用之间共享数据吗? 还是不可能? (我怀疑这是不可能通过常规的角度机构实现的)-但我认为仍然值得提出… 可以使用window变量完成此操作-但我要避免这样做。 谢谢! 问题答案: 我最终以以下方式解决了该问题: 我必须承认这一解决方案并不理想,但这是我找到的最干净的解决方案。

  • 问题内容: 有什么方法可以在node.js的客户端和服务器之间共享数据(包括对象)?我曾经依赖于为此目的而设计的模块now.js,但是该项目已经停产了,我正在寻找替代品。现在now.js被放弃了,还有没有其他方法可以在客户端和服务器之间无缝同步变量? 问题答案: 在now.js之后,两个最接近的竞争者是shareJS和dnode: http://sharejs.org/ https://githu