T
T
thereisnonickname2020-03-30 18:12:53
Python
thereisnonickname, 2020-03-30 18:12:53

Cookies: urlgen, mid. How does Instagram fire me under a proxy?

Hey!

Wrote a Python script for parsing insta accounts. In order for the collection of information not to be delayed for a long time, I parallelized the requests, and for each stream I began to use a separate public proxy (I pull them up in batches from the proxy library).
And suddenly it turned out that Instagram does not care about the proxy, it still understands that I am me .. (of course, the script works without authorization)
As a result of the study, we found that Instagram simply sends Cookies to each stream with the following interesting parameters
: .Cookie mid= (here is some hash, exactly the same for each stream)
2. Cookie urlgen={and here is a pair of my_real_IP: port}

Dear experts, a question:
how the hell does Instagram understand that "this request from Ethiopia is actually Vasya Pupkin from Bibirevo"?!
I don't log in! It is expected that for insta this is an unidentified request from an unauthorized user.

I use the requests lib, create a session object and throw a fresh proxy there through session.proxies.update, after which I execute an anonymous (as it turned out - no) request. WTF?! How can this be?

Answer the question

In order to leave comments, you need to log in

3 answer(s)
T
thereisnonickname, 2020-05-22
@thereisnonickname

The problem was in an incorrectly specified http(s)-scheme (more details in the comments to the question)
Thanks AWEme

O
Olga Usim, 2020-03-31
@Usimov

Obviously, not everything depends on the proxy. It may be that it recognizes your device.

The computer ID is an individual number expressed in hexadecimal notation and is directly linked to the network card. It is under this number, regardless of whether the user uses Windows, Linux or macOS, the device is visible on the network - and it is by ID, unlike IP, that it can really be found.

So dig in that direction. In short, you need to change device data. One proxy is not enough.

B
born2kill229, 2020-05-18
@born2kill229

urlgen="{\"194.34.***.***\": 35048} he sends me the proxy that I use, only on a different port. Works on all my proxies, with all accounts, obviously your cant.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question