Office365-rest-python-client: рддреНрд░реБрдЯрд┐ рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ: AADSTS90023: рдЕрдорд╛рдиреНрдп STS рдЕрдиреБрд░реЛрдз

рдХреЛ рдирд┐рд░реНрдорд┐рдд 8 рдЕрдЧре░ 2019  ┬╖  2рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vgrem/Office365-REST-Python-Client

рдирдорд╕реНрддреЗ, рдореИрдВ рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдирдпрд╛ рд╣реВрдВ рдФрд░ рдЬрдм рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рддреЛ рдпрд╣ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИред
рдЯреЛрдХрди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ: AADSTS90023: рдЕрдорд╛рдиреНрдп STS рдЕрдиреБрд░реЛрдзред
рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреБрдХреАрдЬрд╝ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ
рдлрд╝рд╛рдЗрд▓ ".\LeyendoExcel.py", рд▓рд╛рдЗрди 16, in
ctx.execute_query ()
рд╡рд╛рдкрд╕реА 'FedAuth=' + self.FedAuth + '; rtFa=' + self.rtFa
рд▓реЗрдЦрди рддреНрд░реБрдЯрд┐: рдХреЗрд╡рд▓ str (рдирд╣реАрдВ "noneType") рдХреЛ str . рдореЗрдВ рд╕рдорд╛рдкреНтАНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдХреНрдпрд╛ рдХреЛрдИ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдкрд╛рдпрдерди рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпреВрдЖрд░рдПрд▓ рдХреЛ urllib рдХреЗ parse.quote рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдзрдХреНрдХрд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

>>> import urllib.parse
>>> urllib.parse.quote("https://www.google.co.uk/test&page/", safe=':/')
'https://www.google.co.uk/test%26page/'

рд╕рднреА 2 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реБрдИ рд╣реИред рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдпреВрдЖрд░рдПрд▓ рдореЗрдВ рдкреНрд░рддреАрдХ рд╣реЛрдирд╛ рдореЗрд░рд╛ рдХрд╛рд░рдг рдерд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреВрдЖрд░рдПрд▓ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред
рдореЗрд░реЗ рдпреВрдЖрд░рдПрд▓ рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ '&' рдерд╛, рдЗрд╕реЗ '% 26' рдореЗрдВ рдмрджрд▓рдХрд░ рдХрд╛рдо рдХрд┐рдпрд╛ред
рдЗрд╕реЗ рдЖрдЬрдорд╛рдПрдВ: https://www.urlencoder.io/

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдкрд╛рдпрдерди рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпреВрдЖрд░рдПрд▓ рдХреЛ urllib рдХреЗ parse.quote рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдзрдХреНрдХрд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

>>> import urllib.parse
>>> urllib.parse.quote("https://www.google.co.uk/test&page/", safe=':/')
'https://www.google.co.uk/test%26page/'
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Cesaaar picture Cesaaar  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

etiennecelery picture etiennecelery  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

attibalazs picture attibalazs  ┬╖  10рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

oktorok picture oktorok  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

domdinicola picture domdinicola  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ