-
Notifications
You must be signed in to change notification settings - Fork 30
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
"Reload" button now says "Buy Now" #63
Comments
Actually, as I look at the script, I think the flow has changed on Amazon's side. The original locator is still in the DOM, but it's not clickable. Not only that, but it looks like once you fill in an amount and click buy now, it takes you to a full checkout page, that doesn't resemble what the script is looking for anymore. |
I've gotten a few reports for this issue so you certainly aren't the only one getting A/B tested with a new page. I have some time next week to look into this so I'll get a new version of debbit released that handles the new website changes. |
@jakehilborn Ran into the same issue. Just the other day I was praising how well Debbit is working with Amazon and now they have changed it up to break the functionality. |
This is the same as #59, started happening to me again a few days ago. |
Just started having this issue this month. |
The latest code on the master branch fixes this issue. I need to get the new version built and uploaded though. If you want to try this out before release v2.1.1 is out then replace the file |
I just updated and it looks like it's working. Thanks! |
Running from source, replaced the file and its getting following error "essage: Unable to locate element:[id="orderSummaryPrimaryActionBtn"]" |
@Chief-One Bummer, I was going to push out a new release tonight but I should fix that. Can you that error report to me by either following these instructions or zipping up your |
@jakehilborn |
For what it's worth, the changes made recently worked for me. My checkout page shows a button that says "Use this payment method", whereas yours says "continue" I would venture to guess that since this is the button that the script is failing to locate, that the id is different. Do you know how to find locators (xpath, css, etc.) for an element on a webpage? If so, could you take a screenshot of that page and what the locators are? |
Scratch that, turns out the script saves an html version of the page at failure. That's handy. It looks like a slightly different flow for your scenario - one where you simply choose a card that was previously saved, without having to click a button saying to specifically use that card... |
Side note, @jakehilborn, I don't think you need the for loop on line 144. You could try this xpath and see if it gives you what you're after: //span[contains(@Class, 'pmts-cc-number') and contains(text(),'ending in " + merchant.card[-4:] + "')]/ancestor::div[contains(@Class,'pmts-instrument-box')]/descendant::input[@type='radio'] Disclaimer: I have not tried that locator in a test run yet. |
@Chief-One Could you try the amazon script from this feature branch? If anything, it should get one step closer to fully functional. There may be 1 or 2 more buttons to fix. It looks like your checkout cart is different than others I've seen. |
@jakehilborn |
Looks like its named "ppw-widgetEvent:SetPaymentPlanSelectContinueEvent" and there are two tags with that name so if you are modifying it to grab it by name then need to index it as well from the list |
@Chief-One My bad, I read the stack trace wrong. I just fixed a different wait condition, so now it should at least get a bit further. I pushed the latest code to the feature branch so that hyperlink above should have the latest fix. The good part is that the error reports contain the html file. It allows me to open that html file with debbit and poke around the DOM using selenium with a debugger. |
|
@jakehilborn - Tried the latest one and moved further but complaining about "ap_password"
|
Right, right. That actually makes sense since I forgot to also change the condition for checking if it's on the login page. I just pushed another fix. |
I tried the grandparent thing out on the error report HTML file and it does look like it will work. Alternatively, finding the element by name works mostly well. But, it finds 3 instances even though the webpage only has 2 continue buttons. If I take that approach I'll need to add a loop that tries them in succession with some error handling. |
@jakehilborn - So with the latest change, it reached final checkout page and failed on it. Let me grab logs for it and upload Added |
@jakehilborn - FInal order placement button also has new text looks like so script can account for ti |
@Chief-One Pushed another update. |
@jakehilborn - This one worked e2e! |
@Chief-One Great! Thanks a lot for helping debug this payment flow. Could you do me one more favor? Can you delete the |
@jakehilborn - Deleted cookies folder, ran the entire thing again, and worked without any issue! Thanks man |
Can also confirm the latest master works great with the new page, including the verify card workflow. 🎉 |
Another thumbs up. Works great. Thanks. |
Fixed in release v2.1.1 |
I'm still getting the below error in windows after downloading the latest version. I've tried 2 diff devices on 2 separate days to verify it's not a device issue. I know I'm probably doing something wrong since everyone else says it's working. Any ideas? v2.1.2 Windows Traceback (most recent call last): |
Looks like Amazon has changed the "Reload" button to a "Buy Now" text. This renders the current xpath locator invalid.
The text was updated successfully, but these errors were encountered: