WinInet / WinHTTP cookie 与 Edge 浏览器共享

问题描述

所以我有一个使用 WinInet(但可能是 WinHTTP)的爬虫

如果我必须抓取一个需要用户登录的网站,我过去可以告诉人们使用他们的 IE 浏览器登录并且通常可以工作。

那是因为 cookie 在 WinInet/Internet Options/IE 之间共享。

但是,在新的 Edge 浏览器上尝试相同的方法似乎不起作用。

在 Google 上搜索显示一些有关 Edge 到 IE 的信息,但没有提及 WinInet。也许我只是找错了地方,但之前有人解决过这个问题吗?

解决方法

IE 是基于 WinInet 的应用程序,但 Edge 不是。 Edge 不使用 WinInet,所以我认为这就是它在 Edge 中不起作用的原因。您也可以参考this thread了解更多信息。

如果您仍想使用WinInet cookie 共享,您可以在Edge IE mode 中打开并登录网站。 Edge IE 模式使用 IE 引擎,所以我认为在 IE 下工作的方法也将在 Edge IE 模式下工作。

如果你想在没有IE模式的情况下在Edge中打开网站,也许你需要改变你的网站抓取方式。建议您可以尝试使用一些网络爬虫工具,例如ScrapyBeautiful Soup等。