zachowj / xfinity-data-usage

Fetch Xfinity data usage and serve it via an HTTP endpoint, publish it to MQTT or post it to an URL.
https://hub.docker.com/r/zachowj/xfinity-data-usage
MIT License
53 stars 15 forks source link

No longer working to login to Xfinity #201

Closed JoeDaddy7105 closed 4 months ago

JoeDaddy7105 commented 11 months ago

I had set this up and it was working great for several months but recently it stopped getting updated usage. It looks to have an issue with logging in to Xfinity but I have checked my credentials and can still login in my browser. Here is a snapshot when I first start the container. If I let it run, I continue to get the same error every hour when it tries to login and fetch usage data. image

kreynen commented 11 months ago

Xfinity is definitely rolling out changes... and doing it very poorly. I get a mix of 503 errors and load failures when trying to check https://xfinity.com/usagemeter manually. I'd suggest waiting for xfinity.com to get to a point it's more stable, but you might be waiting a long time.

derp90 commented 11 months ago

It's not worked for months for several of us #130

iveney commented 11 months ago

Xfinity is definitely rolling out changes... and doing it very poorly. I get a mix of 503 errors and load failures when trying to check https://xfinity.com/usagemeter manually. I'd suggest waiting for xfinity.com to get to a point it's more stable, but you might be waiting a long time.

Came to say this. I've been experiencing issue last 2 weeks or so. On web I can't even see in browser https://customer.xfinity.com/#/devices#usage that the container is pulling data from. 503, or bunch of 404 in the console.

image

kreynen commented 11 months ago

Feel free to jump on my public shaming thread at https://twitter.com/kreynen/status/1732960487304781833. I've found that getting support through X.com MUCH better than dealing with the chatbot->agent on xfinity.com. The xfinity.com support folks don't seem to have access to the internet to test anything themselves. I started looking at this project after Xfinity told me we'd used 2x our normal data. Nothing had changed on our end and I didn't see anything close to their numbers in my router or devices. When I asked if there could be a problem with their metering, they told me it was 100% accurate. I find that hard to believe if the same people who can't get /usagemeter working are involved. At this point I've "burned" my "free" overage month, but I don't understand why anyone would trust an organization that benefits financially from showing inflated usage numbers to accurately report on usage.

The only way I can get my usage now is from the chat in Xfinity mobile app.

zachowj commented 11 months ago

This package is working just not consistently. Xfinity is doing some fingerprinting and blocking loggins. Also, it looks like they have started requiring password changes again after an x number of logins.

This project is stuck where it is until someone comes up with a way to get around the fingerprinting.

tfer6 commented 11 months ago

It's not the most elegant solution, but I've had a change detection watch (https://github.com/dgtlmoon/changedetection.io) setup since the last time Xfinity started messing with this. It seems slightly more consistent. Probably overkill if that's the only thing you are using it for.

It ultimately uses Browserless/Chrome to do the scraping which seems to mostly avoid bot detection.

zachowj commented 11 months ago

I run it in a standard VM outside of docker and it gets the usage data consistently on a 20-minute interval.

iveney commented 11 months ago

It is likely due to their data breach that they are upgrading stuff ... smh. Waiting for my $0.01 payout.

https://www.theverge.com/2023/12/18/24007082/xfinity-data-breach-hack-notice-citrix

ClashTheBunny commented 9 months ago

Hey, this is tangential, but one thing that would be nice would be to have the date that it was last refreshed be part of the metadata. That way I would know when it last worked from a glance.

zachowj commented 4 months ago

It should be fixed in the latest release, v0.23.0.