Python Mechanize: UnboundLocalError: локальная переменная 'f', на которую ссылается перед присваиванием - PullRequest
0 голосов
/ 23 января 2019

Я новичок в python и пытаюсь использовать модуль механизации для просмотра веб-страниц, но по какой-то причине он постоянно говорит мне, что я ссылаюсь на локальную переменную 'f', хотя у меня нет такой переменной.

Вот весь мой текущий сценарий:

import mechanize
br = mechanize.Browser()
br.open('https://hac.friscoisd.org/HomeAccess/Account/LogOn?ReturnUrl=%2fhomeaccess%2f')

Если я использую точно такой же код и заменяю ссылку на 'https://stackoverflow.com',, она работает, но со ссылкой, которую мне нужно использовать,Я получаю сообщение об ошибке:

Exception has occurred: UnboundLocalError
local variable 'f' referenced before assignment
   File "C:\Users\colin\MyPythonScripts\mechanizeGPA.py", line 3, in <module>
      br.open('https://hac.friscoisd.org/HomeAccess/Account/LogOn?ReturnUrl=%2fhomeaccess%2f')

Пожалуйста, помогите!

1 Ответ

0 голосов
/ 23 января 2019

Вы можете попробовать удалить цитату из URL перед отправкой в ​​библиотеку

>>> import urllib
>>> url = "https://hac.friscoisd.org/HomeAccess/Account/LogOn?ReturnUrl=%2fhomeaccess%2f"
>>> url = urllib.parse.unquote('https://hac.friscoisd.org/HomeAccess/Account/LogOn?ReturnUrl=%2fhomeaccess%2f')
>>> url
'https://hac.friscoisd.org/HomeAccess/Account/LogOn?ReturnUrl=/homeaccess/'
...