使用Python登录Google帐户进入网站

Fla*_*nix 6 python login google-account oauth-2.0

我正在创建一个网站,其中列出了群组中的人数(来自www.codecamy.com).

为实现这一目标,我提出了一个计划.

我将有一台服务器,每隔30秒轮询一次CodeCademy组页面(http://www.codecademy.com/groups),并从该HTML中检索所需的信息.

在此输入图像描述

然后,当客户端连接到我的网站时,服务器将向客户端提供该信息,然后客户端将使用http://www.chartjs.org/docs/http://www.jqplot.com/来绘制基于该信息的图表.

在此输入图像描述

但是,存在一个很大的问题.如果您点击了CodeCademy的任何链接,那么您意识到您需要有一个帐户才能真正看到该网站.这可以是Facebook帐户,谷歌帐户或推特帐户.

在此输入图像描述

所以,简短的故事,如果我想访问包含有关组的信息的页面,我需要为我的服务器设置一个Bot帐户,我需要教我的服务器登录该帐户.

因此,我在gmail上创建了一个虚拟帐户,名为codecademybot,我希望我的服务器使用此帐户登录codecademy,以便它可以看到该页面的内容.

通过一个快速启动python教程,将我连接到谷歌+我现在也有代码与它进行交互.

然而,尽管如此,我仍然没有关于如何与网站互动的最小想法.我有以下问题:

  1. 如何检测我是否登录了我的Google帐户?
  2. 如何将自己连接到该帐户,以便我可以访问该页面?
  3. 是否有登录该网站的特殊链接?

我很失落,并希望得到任何可能的帮助.

flu*_*lup 6

不要让所有的代码示例和方法将您引入歧途。它们适用于更复杂的情况。

  • 这不是oauth2授权,是oauth2认证
  • 您不是拥有 clientID 和机密的客户。Codecademy 是具有 clientID 和密钥的客户端。您的 codecademybot 帐户就是用户。

这意味着您只需要自动化普通用户在登录 codecademy 时所做的事情。使用开发工具(IE 开发工具、FireBug 等等)在浏览器中播放几次交互并查看 HTTP 请求的对话。

这就是您希望效仿的。

据我所知,

最后一点,我认为,很有趣。您如何使用浏览器手动登录,收听对话并将这两个 cookie 复制到您的自动代码中。看看它们是否足以作为身份验证令牌并允许您从网站获取数据。

如果没有,那么我热烈推荐@CrisBee21 的答案。让我们希望 pyCurl 能够很好地模拟浏览器来为您进行对话。

还有一两件事,当我浏览周围的现场,我看到一个REST API请求,即http://www.codecademy.com/api/v1/notifications/用户ID / UNREAD_COUNT?authentication_token =一些象征性的

冲浪到http://www.codecademy.com/api/v1/users/用户ID /?authentication_token =令牌 给了我关于我自己的详细信息

http://www.codecademy.com/api/v1/users/用户ID /组?authentication_token =令牌给我我在组。

如果您有更多关于 codecademy REST api 的文档,您可以尝试从那里获取它。我找不到任何文档,我正在做这个。