Skip to content

Instantly share code, notes, and snippets.

@lzl124631x
Last active November 30, 2022 23:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lzl124631x/79f72907619b9b1edb943a9eab3b68de to your computer and use it in GitHub Desktop.
Save lzl124631x/79f72907619b9b1edb943a9eab3b68de to your computer and use it in GitHub Desktop.
Extract Chase Credit Card Offers
var $ = (selector, startNode) => (startNode || document).querySelector(selector);
var $$ = (selector, startNode) => Array.from((startNode || document).querySelectorAll(selector));
var all = $$('.sixersoffers__container').map(x => {
return { name: $('img', x).attributes['alt'].value, offer: $('.sixerscontent-one', x).textContent, daysLeft: $('.sixerscontent-two', x).textContent, elem: x }
})
var interested = ['Best Buy', 'Starbucks', 'CVS', "McDonald's", "DoorDash", "Holiday Inn", "Under Armour", "Rite Aid", "Hyatt", "Tommy Hilfiger", "Office Depot", "Sam's Club", "Kohl"]
var format = (x) => x.map(x => `${x.name}\t${x.offer}\t${x.daysLeft}`).join('\n')
var filtered = all.filter(x => interested.some(i => x.name.toLowerCase().includes(i.toLowerCase())))
all.forEach(x => x.elem.style.border = '')
filtered.forEach(x => x.elem.style.border = 'solid 3px red')
copy(format(filtered))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment