Запрос Python.post для подключения к API

#python #api #web-services #authentication #python-requests

#python #API #веб-сервисы #аутентификация #python-запросы

Вопрос:

Я публиковал несколько раз раньше, но, к сожалению, я не получил никакого ответа.

Я пытаюсь подключиться к API для рабочих целей, поэтому я не могу поделиться фактическим URL. Аутентификация прошла нормально, и я получил токен доступа. Проблема в том, что мне нужно просмотреть файл csv, прочитать строку за строкой, затем выполнить вызов API, а затем опубликовать строку, которая имеет в основном два значения, в URL

Ниже приведен мой скрипт для чтения файла и отправки строки в URL: Примечание: мне также нужно будет опубликовать токен аутентификации

 import pandas as pd
import requests
import csv
df = pd.read_csv('test.csv')

def check(filename):
    with open(filename, 'r') as f_in:
        for index, row in df.iterrows():# this will go until the end of the file 
            url2 =''
            value1= row["value1"]
            value2= row["value2"]
            dic2 ={'value1':value1,'value2':value2}
            getdata = requests.post(url2, auth = authtoken, data = dic2)
            Error2 = response2.json()["ErrorCode"]
            if (Error2=='2004'):
                print("Authorization Token Value is Incorrect or Expired")
            elif (Error2=='2005'):
                print("Request Has Been Failed to Validate Data")
                
filename='test.csv'        
check(filename)
  

В настоящее время я получаю сообщение об ошибке, в котором говорится:
Ошибка типа: объект ‘str’ не вызывается

Ошибка, указывающая на приведенную ниже строку кода:

проверка (имя файла)

Я не уверен, действительно ли публикация значений в API URL работает или нет из-за этой ошибки. Ценю любую поддержку в этом.

Спасибо

Комментарии:

1. Неясно, какая строка выдает ошибку? «check (filename)» — это передает имя файла, а затем вы считываете текстовый файл в переменную с именем «f_in» и никогда не используете ее. Возможно, измените метод на «check ()» и удалите «с open (filename, ‘r’) как f_in». Вы же не хотите, чтобы один и тот же файл открывался дважды!

2. Также у вас есть переменная «getdata», которая никогда не используется. И вы проверяете переменную «response2.json ()», которая никогда не назначается и выдает нулевую ошибку