没有api密钥的oauth2

时间:2016-01-22 05:43:23

标签: python api oauth2

我迷路了:)

目标是登录使用OAuth2的网站。但是,我需要运行的部分没有与之关联的API。所以我需要登录,只需使用用户名和密码,然后导航到相关页面并进行屏幕抓取以获取我的数据。

我确定问题不在他坐在这个键盘上的网站上。但我已经搜索了一些例子,并尝试了一大堆猜测,但没有任何工作

非常感谢帮助。

import sys
import requests
import oauth2 as oauth

r = requests.get(logon_url)
consumer = oauth.Consumer(key=user, secret=password)
client = oauth.Client(consumer)
resp, content = client.request(r.url, "GET")
token_url = resp['content-location']

# At this point i'm lost i'm just guessing on the rest
# the next doesn't give an error but i'm sure it's wrong
resp2, content2 = client.request(token_url, 'GET')

# save the cookie, i do have a cookie but not sure what i have 
auth_token = resp['set-cookie']

1 个答案:

答案 0 :(得分:1)

像许多事情一样,它只是一个用户错误

让我进入页面的代码非常简单。以下代码可以解决问题。感谢Furas指针。

    with requests.session() as s1:
         # get login form
         r = s1.get(logon_url)
         # post the username and password
         resp = s1.post(r.url,data=payload)
         # get the admin page
         resp2 = s1.get(page_url)