За исключением нескольких исключений с той же ошибкой, не работает (или я ошибаюсь): Python - PullRequest
0 голосов
/ 02 августа 2020

Хорошо, просто у меня есть этот код, если блок try не работает, он переходит в блок except (очевидно), но он идет только на первый блок except, так что вот так:

                    try:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".jpg"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                    except ApiException as e0:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".png"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e0)
                    except ApiException as e1:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".jpeg"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e1)
                    except ApiException as e2:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".raw"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e2)
                    except ApiException as e3:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".psd"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e3)
                    except ApiException as e4:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".tiff"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e4)
                    except ApiException as e5:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".pdf"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e5)
                    except ApiException as e6:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".eps"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e6)
                    except ApiException as e7:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".bmp"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e7)
                    except ApiException as e8:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".ai"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e8)
                    except ApiException as e9:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".gif"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e9)
                    except ApiException as e10:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".pict"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e10)
                    except ApiException as e11:
                        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+".svg"
                        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
                        bot.register_next_step_handler(nhlim, nhen_sender)
                        print(e11)

Если первый except не работает, другие except не рассматриваются, но python ни ошибок, ни помощи?

Ответы [ 2 ]

0 голосов
/ 02 августа 2020

Для упрощения кода можно использовать for -l oop.

list = ['jpg', 'png', ...]

for item in list:

    try:
        
        cover="https://t.nhentai.net/galleries/"+str(medid)+'/cover'+ '.' + item
        nhlim=bot.send_photo(chatId,cover,caption='Nhentai id: <code>'+str(pornId)+'</code>\nGenres: <code>'+str(genres)+'</code>\nPages number: <code>'+str(jhen['result'][choosedNum]['num_pages'])+'</code>\nEnglish title: <code>'+str(jhen['result'][choosedNum]['title']['english'])+'</code>\nJapanese title: <code>'+str(jhen['result'][choosedNum]['title']['japanese'])+'</code>\nPretty (Short) title: <code>'+str(jhen['result'][choosedNum]['title']['pretty'])+'</code>',parse_mode='HTML')
        bot.register_next_step_handler(nhlim, nhen_sender)
        break

    except ApiException as err:
    
        errorHandling
        continue
0 голосов
/ 02 августа 2020

Если все эти исключения предназначены для устранения проблемы в вашем единственном блоке try (между try и первым except), вы должны поймать разных исключений в каждом. В противном случае будет иметь значение только первое.

С другой стороны, если вы пытаетесь перехватить исключение в обработчике исключений (и так далее по дереву обработки исключений), вам нужно будет их вложить , что-то вроде:

try:
    doSomething()
except ApiException as e0:
    try:
        doSomethingElse()
    except ApiException as e1:
        try:
            doAThirdThing()
        except ApiException as e2:
            andSoOn()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...