Это из-за инстаграм.Когда вы сначала открываете instagram, он не отправляет вам файлы cookie, вам необходимо войти в систему или сделать запрос еще раз.
Обновление: если вы хотите войти в систему и хотите получить токен csrf, существует метод:
import json
import requests
import lxml.html
def get_csrf_token(content):
xpath_data = lxml.html.fromstring(content).xpath('/html/body/script[1]/text()')[0]
raw_json = xpath_data[xpath_data.find('{'):-1]
return json.loads(raw_json)["config"]["csrf_token"]
def get_main_page():
session = requests.Session()
content = session.get('https://instagram.com')
csrf_token = get_csrf_token(content.content)
header = {'x-csrftoken' : csrf_token,
'x-requested-with' : 'XMLHttpRequest',
'User-Agent' : "Your user agent there",
"referer" : 'https://instagram.com',
"cookie" : "ig_cb=1",
"origin" : 'https://instagram.com'}
session.headers.update(header)
Я предполагаю, что вы могли бы написать метод "POST" для входа в систему.