使用请求登录Google帐户

2024-09-28 16:58:47 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我尝试使用Python的请求模块登录Google。登录后,我试图访问一个谷歌课堂。然而,当我打印内容时,我似乎仍然停留在登录页面。如果有人能提供一些关于我在哪里犯了错误的见解,那将大有裨益。我使用以下代码:

import requests

login_url = 'https://accounts.google.com/ServiceLoginAuth'
class_url = 'https://classroom.google.com/r/MTQ3NTUxMjk5'

s = requests.session()

#payload = {'Email': 'myemail@gmail.com', 'Passwd': 'mypass'} # This way?
login_data = dict(Email='myemail@gmail.com', Passwd='mypass') # or this way?

s.post(login_url, data=login_data)
r = s.get(class_url)

print r.content

我在身体里发现了一个新的信息:

^{pr2}$

有什么想法吗?在

编辑:

page_source中,正如预期的那样,有大量的html。然而,我正在查看它,并在末尾发现了一个</body>标记。所以我用find()来寻找<body>标记,但它不在那里。。。为什么开头的正文标记和页面上的其他内容没有显示?我通过Chromedriver和PhantomJS测试过selenium,但是只有Chromedriver给了我完整的html。为什么请求和幻影对我都隐藏了内容? 我还拍了一些幻影的截图。Here is the login page.和{a2}我给了页面足够的时间来加载(10秒),所以这不是一个因素。这很令人沮丧。在


Tags: https标记comurl内容dataemailgoogle
1条回答
网友
1楼 · 发布于 2024-09-28 16:58:47

你需要做些类似的事情

a=req.request('GET','http://example.com',headers=head)
cook=a.cookies
a=req.request('POST',page,data=params,headers=head,cookies=cook)

记录服务器提供的cookies,然后使用它们。你当然不需要先GET。尝试像往常一样登录并使用嗅探器跟踪详细信息。然后回放浏览器发送的所有内容以及它如何与cookies一起工作。在

相关问题 更多 >