使用django social-auth访问用户的当前公司

时间:2015-02-10 00:59:36

标签: django linkedin django-socialauth python-social-auth

我已成功在我的网站上设置了Linkedin社交认证 Django的socialauth。我能够检索顶级配置文件字段,例如标题,没问题,我的settings.py中的设置如下:

LINKEDIN_EXTRA_FIELD_SELECTORS = [
'email-address',
'headline',
'industry',
'location',
'picture-url',
'specialties',
'positions',
'relation-to-viewer',
'skills',
'public-profile-url',    
]
LINKEDIN_EXTRA_DATA = [('id', 'id'),
                   ('first-name', 'first_name'),
                   ('last-name', 'last_name'),] + [
                       (field, field.replace('-', '_'), True)
                       for field in LINKEDIN_EXTRA_FIELD_SELECTORS
                   ] 

不幸的是,我对如何访问"较低级别"感到困惑。使用这种界面的Linkedin字段选择器语法。

例如,从这里开始:https://developer.linkedin.com/forum/how-get-api-current-company-position-using-parameter-current,可以使用以下语法访问用户的当前公司:

positions:(is-current,company:(name))

如何在上面的settings.py变量中包含此选择器?如上所述天真地插入选择器会导致KeyErrors或Null值。

1 个答案:

答案 0 :(得分:0)

想出来。在您检索到字典"详细信息"从链接中,您可以检索当前公司:

 current_companies = [position['company']['name'] for position in details['positions']['position'] if position['is-current']=='true']