使用 Python 验证 Minecraft Microsoft 帐户
Authenticating a Minecraft Microsoft account with Python
我到底在做什么
因此,随着 Minecraft Java 逐渐转向使用基于 Microsoft 的帐户而不仅仅是 Mojang 帐户,我一直在尝试为我一直在工作的一个小型启动器项目整合一种身份验证方法上。
第一期。
我一直在关注一篇文档 here,其中说明了将什么 GET 和 POST 请求发送到哪些 URL 以及如何解析它们,等等。除了 The First Issue.
之外,它运行良好
那是一个风雨交加的夜晚, Microsoft 身份验证 URL 使用 Java 脚本进行重定向,所以我在Python 无法遵循重定向。可能有一种方法可以解析 HTML 内容并找到重定向之类的东西,但这超出了我的理解范围,因为我对 Python.
还是个新手
所以我四处寻找可以让我遵循 JavaScript 重定向的解决方案,最好的解决方案(在概念上)看起来是使用无头浏览器。这让我走了很长一段路,直到我面对 第二期。
第二期。
我四处寻找可以使用的无头浏览器,并找到了几个:
- 硒,或
- PyQT WebEngine 或 WebKit
(我知道还有很多其他的,但我选择了这些并将它们用作示例)
从这里开始,问题不是要解决的问题,而是我不知道自己在做什么的问题。
我研究了 Selenium,它看起来很有前途,但我必须下载 WebDriver 的事实让我对如何打包它感到困惑,因为它将用于分布式应用程序。
然后我研究了 PyQT WebEngine,它让我在各个方面都感到困惑,所以基本上我只需要一些关于如何使用它的信息。我也不需要使用 PyQT 来启动 window,或设计我的 UI,或其他任何东西。我已经计划将 Kivy 用于 GUI。当向某个 URL.
发送 POST 请求时,我只需要一个无头浏览器或其他一些解决方案来遵循 Java 脚本重定向
所以,
从这里我只想咨询我应该走哪条路线,因为似乎有很多我可以使用的选择。我已经提到了我需要什么,所以关于无头浏览器、库等方面我应该如何使用或使用什么的任何建议
此外,如果有人对如何验证 Microsoft 帐户有任何其他建议,请告诉我。
我快完成了
如果有什么我可以回答或澄清的,请告诉我。我将非常感谢所有意见或建议。
谢谢,
Pyrotex7
好吧,为了解决这个问题 - 我在折腾了一段时间后最终选择了 PyQt。
我到底在做什么
因此,随着 Minecraft Java 逐渐转向使用基于 Microsoft 的帐户而不仅仅是 Mojang 帐户,我一直在尝试为我一直在工作的一个小型启动器项目整合一种身份验证方法上。
第一期。
我一直在关注一篇文档 here,其中说明了将什么 GET 和 POST 请求发送到哪些 URL 以及如何解析它们,等等。除了 The First Issue.
之外,它运行良好那是一个风雨交加的夜晚, Microsoft 身份验证 URL 使用 Java 脚本进行重定向,所以我在Python 无法遵循重定向。可能有一种方法可以解析 HTML 内容并找到重定向之类的东西,但这超出了我的理解范围,因为我对 Python.
还是个新手所以我四处寻找可以让我遵循 JavaScript 重定向的解决方案,最好的解决方案(在概念上)看起来是使用无头浏览器。这让我走了很长一段路,直到我面对 第二期。
第二期。
我四处寻找可以使用的无头浏览器,并找到了几个:
- 硒,或
- PyQT WebEngine 或 WebKit (我知道还有很多其他的,但我选择了这些并将它们用作示例)
从这里开始,问题不是要解决的问题,而是我不知道自己在做什么的问题。
我研究了 Selenium,它看起来很有前途,但我必须下载 WebDriver 的事实让我对如何打包它感到困惑,因为它将用于分布式应用程序。
然后我研究了 PyQT WebEngine,它让我在各个方面都感到困惑,所以基本上我只需要一些关于如何使用它的信息。我也不需要使用 PyQT 来启动 window,或设计我的 UI,或其他任何东西。我已经计划将 Kivy 用于 GUI。当向某个 URL.
发送 POST 请求时,我只需要一个无头浏览器或其他一些解决方案来遵循 Java 脚本重定向所以,
从这里我只想咨询我应该走哪条路线,因为似乎有很多我可以使用的选择。我已经提到了我需要什么,所以关于无头浏览器、库等方面我应该如何使用或使用什么的任何建议
此外,如果有人对如何验证 Microsoft 帐户有任何其他建议,请告诉我。
我快完成了
如果有什么我可以回答或澄清的,请告诉我。我将非常感谢所有意见或建议。
谢谢, Pyrotex7
好吧,为了解决这个问题 - 我在折腾了一段时间后最终选择了 PyQt。