Получите доступ к сайту https с помощью базовой аутентификации и файлов cookie с помощью программного обеспечения python - PullRequest
0 голосов
/ 28 июня 2019

Мне нужен доступ к сайту https с базовой аутентификацией через Python3.Когда я загружаю сайт через браузер, беру cookie и вводю код, я получаю успешный ответ в формате xml.Я хочу иметь возможность получать cookie программно (вместо того, чтобы вручную копировать со вкладки браузера) и иметь возможность вызывать URL.

Что мне нужно использовать в приведенном ниже коде?

import certifi
import urllib3
import requests


#Problem: Avoid hard coding of cookies
cookies={
"ABC_SESSIONID_EFG_001":"XXXX"
}

url="url that is restricted to access only within corp network"
user="username"
password="password"

o = requests.get(url, auth=(user, password), cookies=cookies,
verify='./certs.pem') 
print(o)

1 Ответ

0 голосов
/ 28 июня 2019

Я бы порекомендовал добавить requests.session() к вашему коду (который автоматически сохранит для вас куки). Попробуйте следующий код:

import certifi
import urllib3
import requests

session = requests.session()

user="username"
password="password"

session.get(url) 
o = session.get(url, auth=(user, password),verify='./certs.pem') 
print(o)

если решение выше не решает проблему, попробуйте заменить это:

session.get(url) 

с этим:

session.get(url,verify='./certs.pem')

(в коде выше)

Надеюсь, это поможет

...