Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't find own profile ID, web feeds found: 0 #32

Open
zhanko73 opened this issue Dec 10, 2024 · 15 comments
Open

Can't find own profile ID, web feeds found: 0 #32

zhanko73 opened this issue Dec 10, 2024 · 15 comments

Comments

@zhanko73
Copy link

Hi,

I had an earlier version (2024 Feb) of you python script and that stopped working (giving python errors, maybe due to strava changes).
The most recent version also does not work:
_root@3a36a02831e3:/strava# python3 ./give_kudos.py
---Logged in!!---
can't find own profile ID
web feeds found: 0

Kudos given: 0_

I tried to run with both Python 3.9.10 and also with the most recent Python where new playwright was required, but the result is the same you can see above. (I run python script in container locally but this is not the root cause of the non-working script as previous version used to work.)
Also I checked my userid/password in an incognito mode browser and works fine.

Any idea?

@isaac-chung
Copy link
Owner

I used to face a few issues in the old version, where there were pop-ups asking about cookies or to accept updated terms and conditions. These only show up on a new IP (?). I didn't spend time debugging the container solution as it took just as long as the old solution (current solution). If you have some time, it would be great if you could take a look. Otherwise, the current version is still kicking 👍

@vmpg
Copy link

vmpg commented Dec 11, 2024

I have the same problem, I run it as a GitHub action.

`Run python give_kudos.py
python give_kudos.py
shell: /usr/bin/bash -e {0}
env:
STRAVA_EMAIL: ***
STRAVA_PASSWORD: ***
pythonLocation: /opt/hostedtoolcache/Python/3.9.10/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.9.10/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.9.10/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.9.10/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.9.10/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.9.10/x64/lib
---Logged in!!---
can't find own profile ID
web feeds found: 0

Kudos given: 0`

@isaac-chung
Copy link
Owner

@zhanko73 @vmpg try running the current main branch.

@vmpg
Copy link

vmpg commented Dec 11, 2024

@zhanko73 @vmpg try running the current main branch.

I have the current Main branch, it only worked once during setup and then no more

@cdc43635
Copy link

I have the same problem. I made some changes to localhost and when I run the tests in debug firebox nightfy is executed. And the Strava website redirects the next page to a human confirmation page.

@isaac-chung
Copy link
Owner

isaac-chung commented Dec 11, 2024

Just checked my logs. I also see this, and it seems like it started more or less 4 days ago.

I won't have time until next week to take a look. In the meantime, if you have any suggestions, feel free to share here.

It sounds like a workaround for the human confirmation page is needed.

@domantascibas
Copy link
Contributor

domantascibas commented Dec 12, 2024

can confirm, after the login page is loaded website redirects to human confirmation:

image

@mkschuel
Copy link

Might be it can be solved by using a private GH Action runner. I assume the GH Action runner network is now blacklisted on Strava. Will try to test it during the christmas days.

@bin101
Copy link
Contributor

bin101 commented Dec 20, 2024

My fork is running locally and not via GH action. Having the same issue I guess Strava just now started to detect bot like actions as playwright is doing them.

You could try to use the stealth plugin for playwright.

@isaac-chung
Copy link
Owner

isaac-chung commented Dec 21, 2024

@bin101 are you able to get it working with playwright stealth?
I'm also thinking of trying puppeteer as well, but not sure how effective it would be.

@bin101
Copy link
Contributor

bin101 commented Dec 22, 2024

Not yet, maybe during the holidays.

@Arnibu
Copy link

Arnibu commented Dec 22, 2024

Do not have much xp but tried with stealth, looks like the login button is blocked.
I can unlock it manually by actually typing in both input (login / pw) so I tried to simulate keyboard press on those inputs. Unfortunately it won't work.

@MaxLazar
Copy link

It probably relates to the new policy that protects against getting data from Strava by third-party services.

@isaac-chung
Copy link
Owner

Hmm. @Arnibu wondering if a mouse click (somewhere) can help unblock it? When I last tried in a UI manually, I recall seeing the blocked login button as well, then toggled the "remember me" manually, which unblocked the button. Just throwing out ideas at the moment.

@domantascibas
Copy link
Contributor

I've had some success to an extent using the playwright_stealth package together with additional randomized delays to impersonate a human:

# Function to simulate human-like behavior with random delays
def human_like_delay(min_delay=1, max_delay=3):
    time.sleep(random.uniform(min_delay, max_delay))

This helps to bypass the human verification page (#32 (comment)). However, it seems that the login flow was now split into two steps, where at first you only enter your email, and then enter the password on the second page.

email field:
Image

password field:
Image

haven't had time to split the login function into two steps, but will create a PR for the playwright_stealth improvements

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

9 participants