Можно ли сделать так, чтобы запросы Tor происходили с разных IP?
Этот код должен получить cookie-файл "csrf token" с Instagram.com, но я получаю сообщение об ошибке при запуске программы через Tor (закомментировано внизу этого кода), информирующее меня о том, что cookie-файл "csrf" не предоставляется. Если s.proxies закомментирован, программа работает без ошибок, и Instagram.com предоставляет файл cookie csrf token. Я не уверен, но (TL;DR:) Я склонен полагать, что Instagram не предоставляет cookie-файл csrf при подключении через Tor, так как видит, что запрос возник из 127.0.0.1.
Итак, мой вопрос: как я могу настроить Tor на отправку запросов от чего-то отличного от 127.0.0.1, или как я могу подделать запросы, чтобы Instagram не понимал, откуда они возникли?
import requesocks
import requests
s = requesocks.session()
# Tor uses the 9050 port as the default socks port
s.proxies = {'http': 'socks5://127.0.0.1:9050',
'https': 'socks5://127.0.0.1:9050'}
url = 'https://www.instagram.com/accounts/web_create_ajax/'
s.get(url)
tok = s.cookies['csrftoken']
#Outputs:
#Traceback (most recent call last):
#File "tor.py", line 24, in <module>
#tok = s.cookies['csrftoken']
#KeyError: 'csrftoken