Como realizar um POST com Basic Auth em Python 3.x.x

Bibliotecas utilizadas:

from urllib.request import urlopen, base64
import requests

Neste exemplo utilizaremos em um dos dados a serem enviados o conteúdo de um arquivo texto armazenado na máquina local, para carregar o arquivo basta utilizar a função open:

arquivo = open(“teste.tx2”,“r”) # Carrega arquivo tx2
tx2 = arquivo.read() # Lê oc onteudo do arquivo para a variavel

Para facilitar o entendimento vou criar algumas variaveis para armazenar a url para onde será enviada a requisição, assim como os dados utilizados para montar o Basic Auth. Os parametros e valores utilizados em nossa requisição precisam ser estruturados em um array como abaixo:

url = ‘http://192.168.2.154:8081/ManagerAPIWeb/nfce/envia’ # IP eDoc + Rota
usuario = ‘admin’ # Usuário
senha = ‘123mudar’ # Senha

payload = {‘grupo’: ‘edoc’, ‘cnpj’: ‘08187168000160’, ‘arquivo’: tx2} # Parametros da API

Para enviar a requisição basta chamar o método post da classe request, onde o primeiro parametro será a url de destino, segundo o array com os dados a serem enviados, terceiro onde realizaremos o Basic Auth e logo após imprimimos a resposta.

resposta = requests.post(url, params=payload, auth=(usuario, senha)) # Envia a requisição
print(resposta.text) # Imprime a resposta da requisição
https://tsdn.tecnospeed.com.br/files/render/a/TkOguoNUIeY/m/2Aal0HUq8Wca7DPNr8jvDxniyCPa5KtdXS3aeNjBXFL2OcM3hKGjtxwReMQ4y87p0aY1qCV9NwY