Я просмотрел похожие вопросы в stackoverflow, но, похоже, ни один из ответов не отвечает. Теперь у меня в руках cookies.txt, который экспортируется расширением chrome с именем «cookies.txt». Я могу выполнить команду "wget --load-cookies cookies.txt www.example.com", чтобы загрузить веб-страницу с аутентифицированной учетной записью.
Однако я столкнулся с проблемой, когда попытался использовать этот файл в своем скрипте Python следующим образом:
import mechanize
cookie = 'cookies.txt'
cookiejar = mechanize.FileCookieJar(cookies.txt)
br = mechanize.Browser()
br.set_handle_robots(False)
br.set_cookiejar(cookiejar)
url = 'www.example.com'
response = br.open(url)
s = response.read()
f = open('test.html','w')
f.write(s)
f.close()
Я только получил веб-страницу без входа в мою учетную запись после выполнения этого скрипта. И если я изменю первые несколько строк кода на этот
import mechanize
cookie = 'cookies.txt'
cookiejar = mechanize.MozillaCookieJar()
cookiejar.load(cookie)
Я получил сообщение об ошибке «mechanize._clientcookie.LoadError: cookies.txt не похож на файл cookie формата Netscape» при выполнении сценария.
Я понятия не имею, как мне выполнить аутентификацию с помощью cookies.txt, если этот файл работает в команде wget.