Olá,
Estou fazendo um script para gerenciar de forma bem simples meu repositório do Github, porém ao executar o código abaixo para inserir um arquivo em uma pasta dentro de um repositório, comecei a receber o erro 409 a partir do segundo arquivo.
import requests
import base64
arquivo = 'desafios/Python_e_APIs_Desafio_Aula_02.ipynb'
with open(f'../{arquivo}', 'rb') as file:
file_content = file.read()
encoded_content =base64.b64encode(file_content)
api_base_url = 'https://api.github.com'
access_token = '<<meu token>>'
headers = {'Authorization' : 'Bearer '+ access_token,
'X-GitHub-Api-Version': '2022-11-28'}
username = 'PRicardo27'
repo = 'python-requests'
path = 'desafios/Python_e_APIs_Desafio_Aula_02.ipynb'
url = f'{api_base_url}/repos/{username}/{repo}/contents/{path}'
print(url)
data = {
'message':'Adicionando um novo arquivo',
'content':encoded_content.decode('utf-8')
}
response = requests.put(url,json=data,headers=headers)
print(response.status_code)
Quando executei a primeira vez com o arquivo Python_e_APIs_Desafio_Aula_01.ipynb
, executou sem problemas, até criou a pasta desafios no repositório
Pelo o que vi na documentação, o código 409 se refere a conflito, imagino que seja culpa da pasta "desafios", porque na raiz do repositório consigo inserir os arquivos sem problema