gpt4 book ai didi

python - 如何在身份验证后获取 LinkedIn 返回 URL

转载 作者:太空宇宙 更新时间:2023-11-03 16:49:05 25 4
gpt4 key购买 nike

我正在尝试使用https://github.com/ozgur/python-linkedin

if __name__ == '__main__':
API_KEY = 'XXXXXXXXXXX'
API_SECRET = 'XXXXXXXXXX'
RETURN_URL = 'http://localhost:8080'
authentication = LinkedInAuthentication(API_KEY, API_SECRET, RETURN_URL, PERMISSIONS.enums.values())
print authentication.authorization_url

此代码打印:

https://www.linkedin.com/uas/oauth2/authorization?scope=r_basicprofile%20r_emailaddress%20w_share&state=1e7f21566bdd75cee5d71d0615f338ad&redirect_uri=http%3A//localhost%3A8080&response_type=code&client_id=XXXXXXXXXX

当我单击此链接时,LinkedIn 身份验证页面将打开。身份验证后,它返回该 URL:

http://localhost:8080/?code=CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&state=f40c8d9ec67df057e72eeb235f4d8e7c

如果我快速复制该 CCCCCCCC...代码并在中使用它

application = LinkedInApplication(authentication)

authentication.authorization_code = "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"

application = LinkedInApplication(token=authentication.get_access_token())

print application.get_profile()

它打印我需要的个人资料信息。但我不想单击 URL 并将 CCCCC... 代码复制到我的 python 代码中。我想以编程方式完成这些操作。我需要获取该授权码。我怎样才能做到这一点?

最佳答案

当我点击收到的链接时,遇到了无效的 redirect_uri 错误,因此我只能帮助您入门。

如果代码位于您链接到的页面上,您可以简单地使用 HTTP GET 页面并提取代码。但是,由于您说必须在浏览器中加载页面,对自己进行身份验证,然后从结果页面中获取代码,因此该过程有点复杂。您可以在已包含您的凭据的页面上尝试 GET 吗?

import requests

if __name__ == '__main__':
API_KEY = 'XXXXXXXXXXX'
API_SECRET = 'XXXXXXXXXX'
RETURN_URL = 'http://localhost:8080'
authentication = LinkedInAuthentication(API_KEY, API_SECRET, RETURN_URL, PERMISSIONS.enums.values())
auth_url = authentication.authorization_url

#Create an HTTP request with your credentials included
response = requests.get(auth_url, auth=requests.auth.HTTPBasicAuth('username', 'password'))
print response
print response.text

这只是为了让您开始。我相信以编程方式对自己进行身份验证是可能的,但它可能比这种基本方法稍微复杂一些。让我知道这会给您带来什么返回。

关于python - 如何在身份验证后获取 LinkedIn 返回 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36040766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com