Skip to content

Instantly share code, notes, and snippets.

@msuarz
Last active December 14, 2015 08:59
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 msuarz/5062044 to your computer and use it in GitHub Desktop.
Save msuarz/5062044 to your computer and use it in GitHub Desktop.
wd = require('wd');
browser = wd.remote 'localhost', 9134
products = []
browser.init ->
browser.get "http://www.shopmania.es", ->
browser.elementById 'autocomplete_prod', (err, el)->
browser.clear el, (err)->
browser.type el, '3TL941C', (err)->
browser.elementByCssSelector '#top_search_row > button', (err, el)->
browser.clickElement el, (err)->
"""
browser.takeScreenshot (err, img)->
require("fs").writeFile "out.png", img, 'base64', (err)->
console.log(err)
"""
browser.elementsByCssSelector 'div.price_row.rowfeat', (err, els)->
async.map els, read_product, (err, products) ->
console.log products
read_product = (row, callback) -> async.series
envio: (callback) ->
row.elementByCssSelector 'p.small.light',
(err, el) -> el.text callback
price: (callback) ->
row.elementByCssSelector 'span.txt_price',
(err, el) -> el.text callback
srcId: (callback) ->
row.elementByCssSelector 'div.col_img > p > a > img',
(err, el)-> el.getAttribute 'alt', callback
, callback
Copy link

ghost commented Mar 1, 2013

read_product = (row, callback) -> async.parallel
envio: (callback) ->
callback null, 10
price: (callback) ->
callback null, 20
srcId: (callback) ->
callback null, 30
, callback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment