charliewolf / pynder

:fire: Python client for tinder api
Other
638 stars 142 forks source link

How to keep disliking when nearby_users is exhausted #80

Open roperi opened 8 years ago

roperi commented 8 years ago

Sorry if this is a noob question. I just started to play with pynder.

I'd like to know how can I dislike or superlike a user or set of users once I exhausted them via session.nearby_users()? For instance, when on my phone once I like 100 users I still get to see other users which I can either dislike or superlike.

Also, a bit unrelated. Is it possible with pynder to check matches' user info as in session.nearby_users()[0]?

charliewolf commented 8 years ago

That's an interesting point. I think most people must only auto-like hence why nobody has pointed out. But I agree with you, nearby_users() should not cease to work. I will work on a PR (or someone else can as well if they can get to it sooner) for this.

Can you clarify your second question?

roperi commented 8 years ago

Many thanks, CharlieWolf!

To clarify my second question. How do I get matches' info like ping_time, and other data that could change over time such as photos, bio, jobs, distance_km, etc? (Should I open this as an issue?)

Thanks again!

DylanVanAssche commented 8 years ago

I tested this with:

`if(Session.likes_remaining > 0):

LIKE`

Data about matches can you get by:

matches[0].user.bio

You need to .user between the matches list and the object you want to download.

Dylan

EDIT: Fixed syntax

roperi commented 8 years ago

You beat me to it, Dylan! I was about to post that I found the solution in closed issues:

matches[0].user.bio # without the ()

But doesn't ...

session.likes_remaining #without ()

...always return 0 or 100?

DylanVanAssche commented 8 years ago

@h-2-0 Yes but you know when you are out of likes as soon that session.likes_remaining == 0. At that moment you stop with liking people.

roperi commented 8 years ago

@modulebaan

Yes. But even if session.likes_remaining == 0 I still want to be able to dislike and/or superlike users using session.nearby_users(). That's the whole point of this issue. Unless I'm not understanding you.

DylanVanAssche commented 8 years ago

As soon as you are out of likes the Tinder servers won't allow you to do that... These dislikes and so are redirected to the person Tinder Team which says that you are out of likes

roperi commented 8 years ago

@modulebaan So do you know why is possible to keep disliking when you run out of likes using the mobile app?

DylanVanAssche commented 8 years ago

@h-2-0 How can you confirm that? Maybe the button works but you can't see if it's actually disliking...

roperi commented 8 years ago

@modulebaan

I've sniffed a whole Tinder session from my mobile. After exhausting all my likes, I started disliking and I could see in Charles that every dislike (i.e. left swipe or click on red button) sends a GET /pass/{user_id} to a Tinder server.

Ximzend commented 8 years ago

@h-2-0 There is only a Like and a Superlike limit, but no Dislike limit. Maybe that answers your question.

roperi commented 8 years ago

@Ximzend57

Thanks, but I understand that. This is why I created the thread because there's no way to dislike after exhausting likes or superlikes with Pynder whereas with your phone you still can. It seems only @charliewolf understands what I mean :'( xD

SHABINTHEGREAT commented 8 years ago

@h-2-0 : You are correct about being able to DisLike unlimited number of people. Tinder keeps showing new potential profiles even if the Like limit has been reached.

Tinder servers must be registering the DisLikes too, since those same profiles are never shown again.

DylanVanAssche commented 8 years ago

Interesting, I didn't know that...

roperi commented 8 years ago

Hello! I've changed the title of this issue to something I think is describes it better (i.e. "How to keep disliking when nearby_users is exhausted").

Any new insights about this?

ghost commented 8 years ago

how do you even make the call to dislike someone? I don't see that option in the documentation anywhere

roperi commented 7 years ago

@halalfood

From the README file

You may run user.like(), user.superlike() or user.dislike() on that user.

VeNoMouS commented 7 years ago

Anyone know if there's a way to see the delay value until likes return?

roperi commented 7 years ago

@VeNoMouS

This is how I get it:

meta = session._api.meta()
now = int(time())
limited_until = meta['rating'].get(
   'rate_limited_until', now)  # Milliseconds
seconds_to_like = int(limited_until / 1000 - now)
VeNoMouS commented 7 years ago

@h-2-0 lol yea strangely enough while looking at the code last night.. i found can_like_in() in session

taseppa commented 7 years ago

My theory is that this works in official Tinder client because it stores old unused nearby users. So if you create a brand new profile and exhaust all your likes then according to this theory you should not be able to dislike anymore. I haven't verified if this is the case though.

ghost commented 7 years ago

theres also a 12 hour limit of 2500 like / dislike calls i believe @taseppa