рд╣рд╛рдп @vgrem ,
рдореБрдЭреЗ рдЕрднреА рднреА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ "рд╡рд┐рд╢реЗрд╖рддрд╛ рддреНрд░реБрдЯрд┐: 'рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ' рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИ '_auth_context'" рдЬрдм рдореИрдВ рдиреАрдЪреЗ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рдХреГрдкрдпрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ
рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ Office365-REST-Python-Client
ctx_auth = рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ (рд╢реЗрдпрд░рдкреЙрдЗрдВрдЯ_рд╕рд╛рдЗрдЯрдпреВрдЖрд░рдПрд▓)
ctx_auth.acquire_token_for_user (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рд╢реЗрдпрд░рдкреЙрдЗрдВрдЯ_рдкрд╛рд╕рд╡рд░реНрдб)
ctx = ClientContext (Sharepoint_SiteUrl, ctx_auth)
рд╡реЗрдм = ctx.web
рд╕реАрдЯреАрдПрдХреНрд╕.рд▓реЛрдб (рд╡реЗрдм)
ctx.execute_query ()
рдкреНрд░рд┐рдВрдЯ ("рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдлрд▓")
рдЕрд░реЗ!
AuthenticationContext.acquire_token_for_user
рд╕реЗ рдХреИрд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░реЗрдВ:
ctx_auth = AuthenticationContext(Sharepoint_SiteUrl)
ctx_auth.acquire_token_for_user(User, Pass)
ctx = ClientContext(Sharepoint_SiteUrl, ctx_auth)
ClientContext.with_user_credentials
рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП:
ctx = ClientContext(site_url).with_user_credentials(username,password)
рдЕрднреА рднреА рдХреЛрдИ рднрд╛рдЧреНрдп рдирд╣реАрдВ рд╣реИ?
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЯреЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ .. рддреЛ рдХреНрдпрд╛ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдЕрднреА рднреА рдЯрд┐рдХреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛?
рдореВрд▓ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ
"рд╡рд┐рд╢реЗрд╖рддрд╛ рддреНрд░реБрдЯрд┐: 'рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЙрдиреНрдЯреЗрдХреНрд╕реНрдЯ' рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИ '_auth_context'" рдЬрдм рдореИрдВ рдиреАрдЪреЗ рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдЪрд▓рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рдХреГрдкрдпрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ AuthenticationContext
рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рдмрдЧ рдерд╛ ClientContext
ред
_fixed_ рд╕рдВрд╕реНрдХрд░рдг GitHub рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
pip install git+https://github.com/vgrem/Office365-REST-Python-Client.git
рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЯреЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ .. рддреЛ рдХреНрдпрд╛ рдЙрдкрд░реЛрдХреНрдд рдХреЛрдб рдЕрднреА рднреА рдЯрд┐рдХреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛?
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рджреГрд╢реНрдп рдХреЗ рдкреАрдЫреЗ рджреЛрдиреЛрдВ ClientContext.with_user_credentials
рдФрд░ AuthenticationContext.acquire_token_for_user
рдкреНрд░рдорд╛рдгреАрдХреГрдд рдЕрдиреБрд░реЛрдз рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╛рди рд╣реИрдВ
рдирдорд╕реНрддреЗ @vgrem
рдореИрдВ рдбреЗрдЯрд╛рдмреНрд░рд┐рдХреНрд╕ рдореЗрдВ рдЗрд╕ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╣рдореЗрдВ рдХреНрд▓рд╕реНрдЯрд░ рд╕реНрддрд░ рдкрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ .. рд╡рд╣рд╛рдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЧрд┐рдЯ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ ...
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╣ рдирдпрд╛ рдкрд░рд┐рд╡рд░реНрддрди рдХрдм рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛?
рдЕрднреА рддрдХ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд░рд┐рд▓реАрдЬ рдХреА рддрд╛рд░реАрдЦ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХреЗ рдЕрдВрдд рддрдХ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред
@vgrem
рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдпрджрд┐ рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рддрдХ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ .. рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдЗрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рдиреЗрддреГрддреНрд╡ рдкрд░реАрдХреНрд╖рдг рд╣реИ ..
рдЗрд╕ рдмреАрдЪ рдореИрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЕрдиреНрдп рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВрдЧрд╛ред
рдореЗрд░рд╛ рдПрдХ рдФрд░ рд╕рд╡рд╛рд▓ рдерд╛ред рдХреНрд▓рд╛рдЗрдВрдЯ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд▓рд┐рдП, рдХреНрд▓рд╛рдЗрдВрдЯ рдЖрдИрдбреА рдХреЗ рд╕рд╛рде рдХреНрдпреВрдкреАрдкреА рдХреЛ рд╢реЗрдпрд░рдкреЙрдЗрдВрдЯ рдСрдирд▓рд╛рдЗрди рд╕рд╛рдЗрдЯ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдРрдк рдХреЛ рдПрдЬрд╝реВрд░ рд╕рдХреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?
рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк (рд╢реЗрдпрд░рдкреЙрдЗрдВрдЯ рдПрд╕реАрдПрд╕ рдФрд░ рдПрдЬрд╝реНрдпреЛрд░ рдПрдбреА) рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред
@vgrem
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж