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

Missed in stock on Thursday #13

Open
JTWrenn opened this issue Oct 17, 2020 · 10 comments
Open

Missed in stock on Thursday #13

JTWrenn opened this issue Oct 17, 2020 · 10 comments

Comments

@JTWrenn
Copy link

JTWrenn commented Oct 17, 2020

Hey Alex, thanks again for the help on all of this. I really appreciate it.

Unfortunately I am fairly certain I had the bot running when best buy got in 3080 FE's and I didn't get one purchased. The thing is, I don't know why.

How hard would it be to change the logging to error, or other action only? Or maybe make other actions go into a txt log that can be checked?

I am happy to go digging on it, just a bit of a bummer when I saw it was in stock but didn't get purchased.

@alexxsalazar
Copy link
Owner

Oh damn that sucks sorry. Changing the logging shouldn’t be hard at all. If you go to the Best Buy python file you should be able to see the main function running and every major call sequences is in a different function. From there you can choose ways you want to log certain events. I did mean to change the logging currently but completely forgot. The continuous checking stock logging in terminal is kind of annoying and hides when things go wrong. Imma do some logging changes tonight to make everything more visible. Do you know if it recognized that the product was in stock? If you go through terminal logs you might be able to see something. Let me know

@JTWrenn
Copy link
Author

JTWrenn commented Oct 17, 2020

Unfortunately no I do not know. I found out way after the fact. When I found out I ran a test and it worked fine on ordering a thumb drive, so I think it was functioning but have no idea what it did when stock came in. Also, there was nothing in cart or checkout. It was just sitting there doing it's normal waiting for restock.

I will poke around a little. Maybe I can just switch everything but the running log to a file log or something along those lines. Thanks for the fast response.

@alexxsalazar
Copy link
Owner

Oh that’s strange. I’ll try to have it running as well for next drop. If the cart is empty it shouldn’t have problems going through. Sorry about that!

@JTWrenn
Copy link
Author

JTWrenn commented Oct 19, 2020

I ended up just commenting out
line 75
'''self.status_signal.emit({"msg":"Loading Product Page","status":"normal"})'''
Line 87
'''self.status_signal.emit({"msg":"Waiting For Restock","status":"normal"})'''
and line 104
'''self.status_signal.emit({"msg":"Checking Stock","status":"normal"})'''

Now I don't get anything to show that it is still running, but it doesn't flood the log in the terminal. I started digging into how to suppress that just for those lines, but allow the update on the GUI, but am not good enough with Python to trust what I am doing.

@JTWrenn
Copy link
Author

JTWrenn commented Oct 20, 2020

I got some errors now.

Error loading product page (line 77 ConnectionError ('Connection aborted.', RemoteDisconnected('Remote end closed connectionwithout response')))

The next line then gave me a
Error Loading product Page (Line 77 Connection error HTTPSConnectionPool(Host='www.bestbuy.com', port=443): Max retries exceeded with url: (Then it had the product link) (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000001BCCE8440A0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')))

Sorry had to type it out as the damn thing wouldn't copy.

I tried stopping and starting the task and it seemed like it started right back up, but without the status it is hard to tell.

Hope that helps with any trouble shooting, and that you are having a great week. Please feel free to tell me it is use as is, don't want to be a bother for you.

@snortlax
Copy link

snortlax commented Oct 22, 2020

The real issue is the use of a single cookie. You will always miss out on purchases even if you have set the bot to stop after one successful purchase. When the website is hammered, you will be stuck with ghost items and unable to check out. Except no mater how many proxies you use you are stuck with ONE session/cookie so one instance adds the item to cart and the rest will get stuck at in cart and do nothing. at least that's my experience. It is pointless to rely on this bot until something else is worked out. (this is what happened to me anyways)

@JTWrenn
Copy link
Author

JTWrenn commented Oct 22, 2020

So why does it work when not hammered but not when hammered? I mean right now it works just fine, even with multiple tasks for different items.

If you are saying the issue is that it uses a single cookie...well why wouldn't that be an issue when not busy as well?

@nalustu
Copy link

nalustu commented Oct 28, 2020

Hi all. I just want to report that the bot was unable to add to cart right when the cards went live at around 1:10PM PST for the Best Buy 3080 drop. I constantly changed the cookie sensor data at least every 2 hours, so maybe Best Buy added some sort of countermeasure against the program, or it sold out so quickly it was unable to add to cart in the 5 second interval.

@JTWrenn
Copy link
Author

JTWrenn commented Oct 29, 2020

Odd, none of the stock checkers say they got stock today. No idea if this works, but has it worked for you on a normal buy? ie something that is in stock already?

@nalustu
Copy link

nalustu commented Oct 29, 2020

Yeah there was definitely a drop today. Most of my discord stock notifications servers and nvidia snatcher notifications pointed to a 3080 FE Drop

It's really a luck of the draw when you try to checkout. The BestBuy app and website seems to have implemented a queue system starting two weeks ago that have been giving legitimate buyers a headache since it stops them from adding to cart. Even if you do add to cart, spamming the checkout button is a hit or miss, and myself included have been getting errors that say "cannot ship to address" mere seconds after the drop goes live.

Edit: Yes! I've tested this BB bot on a pair of headphones that confirmed payment and sent me an email confirmation.

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

No branches or pull requests

4 participants