Monitor Dell Outlet Web Store for Laptop with Given Specification

Dell XPS laptops sell like hotcakes on the Dell Outlet store, and if you want to pick up a bargain for the exact spec hardware that you want, then you may need to monitor the website continually.

In this case I was looking for a Dell XPS 17" laptop with the 4K screen, 32GB RAM and any of the i7 processors, from the Dell UK Outlet store.

The flow runs every 30 seconds, scrapes a webpage with a URL that only shows laptops in a given category, does various selections based on CSS, then searches for text matches on the spec you want.

It's nothing hugely technical, but maybe someone out there can do with this!

[{"id":"2037c2f6.3a3fae","type":"http request","z":"a0c2f06d.bcd7a","name":"XPS 9700","method":"GET","ret":"txt","paytoqs":"ignore","url":"https://outlet.euro.dell.com/Online/InventorySearch.aspx?c=uk&cs=ukdfh1&l=en&s=dfh&brandid=7&sign=PXhcOSHtr1T4IOw%2fPR7Ude6SsOvPWzxlTYa%2b%2fDZb%2blTMrz59n6AW6otzuTxINVbnufY7uP28i%2bnz9ZId7r3K6NLaYtWstUQd3PGAQvLt6U8Qvumj%2fn8vu29hpw6RHkdfw6u0wfaYws54N5apPBvkpz5jb99JSRcV0B1N6xkt3GuoGkjlHau%2bk%2fcO4w%2fY9tstJkKNMUYJFFCa3et9BwU866akdFXFo4qVRhagtdTaJDqbi%2bYy3WoQIkXrD8KYRZQefEwhWCxDdmERxfoI0wif2uBtrYOi1qQOjYvYIZ6DEl4N3%2bES1ufpOw%3d%3d","tls":"","persist":false,"proxy":"","authType":"","x":240,"y":1860,"wires":[["2d5a97e1.d97218","bf3f95ec.16d038"]]},{"id":"b89888dc.bb27f8","type":"inject","z":"a0c2f06d.bcd7a","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"30","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":190,"y":1820,"wires":[["2037c2f6.3a3fae"]]},{"id":"2d5a97e1.d97218","type":"html","z":"a0c2f06d.bcd7a","name":"","property":"payload","outproperty":"payload","tag":".fl-config-desc-container0","ret":"html","as":"multi","x":310,"y":1920,"wires":[["20f306eb.0c544a"]]},{"id":"d0b34c6d.b5e85","type":"function","z":"a0c2f06d.bcd7a","name":"","func":"if (\nmsg.payload[1].match(/i7/) &&\nmsg.payload[3].match(/32GB/) &&\nmsg.payload[5].match(/UHD/)\n) {\n    // we have the right spec\n    msg.topic = \"Dell Outlet Notification - XPS 17 Match found!\"\n    msg.payload = \"<br><br>- \" + msg.payload.join('<br>- ')\n    return msg;\n}","outputs":1,"noerr":0,"initialize":"","finalize":"","x":660,"y":1940,"wires":[["1d632ffd.c6b1"]]},{"id":"b7873d7.13009c","type":"e-mail","z":"a0c2f06d.bcd7a","server":"smtp.gmail.com","port":"465","secure":true,"tls":true,"name":"[email protected]","dname":"","x":1080,"y":1980,"wires":[]},{"id":"bf3f95ec.16d038","type":"html","z":"a0c2f06d.bcd7a","name":"","property":"payload","outproperty":"payload","tag":".fl-config-desc-container1","ret":"html","as":"multi","x":310,"y":1960,"wires":[["20f306eb.0c544a"]]},{"id":"20f306eb.0c544a","type":"html","z":"a0c2f06d.bcd7a","name":"","property":"payload","outproperty":"payload","tag":".fl-pad-tb-5","ret":"text","as":"single","x":510,"y":1940,"wires":[["d0b34c6d.b5e85"]]},{"id":"1d632ffd.c6b1","type":"join","z":"a0c2f06d.bcd7a","name":"","mode":"custom","build":"array","property":"payload","propertyType":"msg","key":"topic","joiner":"","joinerType":"str","accumulate":false,"timeout":"3","count":"","reduceRight":false,"reduceExp":"","reduceInit":"","reduceInitType":"num","reduceFixup":"","x":790,"y":1940,"wires":[["9891855e.686598"]]},{"id":"9891855e.686598","type":"delay","z":"a0c2f06d.bcd7a","name":"","pauseType":"rate","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"hour","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":true,"x":870,"y":1980,"wires":[["b7873d7.13009c"]]}]

Flow Info

Created 4 years, 7 months ago
Rating: not yet rated

Owner

Actions

Rate:

Node Types

Core
  • delay (x1)
  • function (x1)
  • html (x3)
  • http request (x1)
  • inject (x1)
  • join (x1)
Other
  • e-mail (x1)

Tags

  • webscraping
  • html
  • dell
  • outlet
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option