почему я получаю файл, который не найден … (python)

#python #api #file #random

Вопрос:

Итак, в основном я пытаюсь создать бота, который отправляет случайные изображения из моих папок в api, но когда я пытаюсь выполнить запрос, я получаю ошибку, следующая часть кода-импорт

 path= "frames/Dc1001/"  img = random.choice(os.listdir(path)) print (img) upload_url = vk.photos.getWallUploadServer(owner_id=-id, from_group=1)['upload_url'] request = requests.post(upload_url, files={'file': open(img, "rb")}) save_wall_photo = vk.photos.saveWallPhoto(owner_id=-id, from_group=1, photo=request.json()['photo'],server = request.json()['server'], hash=request.json()['hash']) saved_photo = "photo"   str(save_wall_photo[0]['owner_id']) "_"  str(save_wall_photo[0]['id'])  def post_topic(owner_id, from_group, message, attachments):  session.method("wall.post", {  "owner_id": -id,  "from_group": 1,  "message": message,  "attachments": saved_photo  })  while True:  post_topic(-id, 1, "testttt", saved_photo)  time.sleep(30)  

я получаю следующую ошибку:

 FileNotFoundError: [Errno 2] No such file or directory: 'imgNumber.png'  

примечание: он печатает правильный номер img, и да, у меня есть все необходимые библиотеки, импортированные, и где я поместил-идентификатор, причина, по которой мне нужно его скрыть, заранее спасибо за любую помощь

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

1. Это связано с тем, что os.listdir() возвращает список имен файлов в указанном каталоге. Результат не включает путь, т. Е. Это просто базовое имя. Поэтому измените вызов open() на open(os.path.join(путь, img), ‘rb’)