Skip to content

Commit

Permalink
Updating examples
Browse files Browse the repository at this point in the history
  • Loading branch information
jjgonecrypto committed Oct 20, 2016
1 parent f1b54cc commit e4a0b3c
Show file tree
Hide file tree
Showing 7 changed files with 146 additions and 5 deletions.
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,12 +65,14 @@ const hunt = hounds.release({
##Examples
Try out `node examples` for a basic example based on the test fixtures

![image](https://cloud.githubusercontent.com/assets/799038/19538754/93f3ceda-9623-11e6-92ed-51ecb40393dd.png)
![hounds-simple](https://cloud.githubusercontent.com/assets/799038/19570264/41277d88-96c7-11e6-9060-83b7590c0cfb.gif)

Unleash them on the latest sites from HackerNews via `node examples/hackerNews`

Or use them against a local site with auth (see [examples/preAuth.js](examples/preAuth.jss#L14-L26))

![hounds-preauth](https://cloud.githubusercontent.com/assets/799038/19570191/ec2cd0a8-96c6-11e6-9586-f3b4fa9507b2.gif)

##Changelog
* ~~`0.2.0` Supports a single url with a promise~~
* ~~`0.3.0` Stream support (instead of promises)~~
Expand All @@ -83,4 +85,4 @@ Or use them against a local site with auth (see [examples/preAuth.js](examples/p
* ~~`0.8.0` Support for logTo writable stream for URLs processed, and correct error emitting bugfix.~~
* ~~`0.9.0` By default, only links within same `hostname:port` are considered. Override with predicate function `urlFilter`~~
* ~~`0.10.0` `urlFilter` also receives result of domain check as second argument. Bug fix: no dupes anchors in the one page~~
* ~~`1.0.0` `before` and `after` callbacks receive nightmare instance and if defined, must return it (see [examples/preAuth.js](https://github.com/justinjmoses/hounds/blob/master/examples/preAuth.js))
* ~~`1.0.0` `before` and `after` callbacks receive nightmare instance and if defined, must return it (see [examples/preAuth.js](https://github.com/justinjmoses/hounds/blob/master/examples/preAuth.js))~~
26 changes: 26 additions & 0 deletions examples/economist.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
'use strict'

const urlLogger = require('./urlLogger')
const errorWriter = require('./errorWriter')

const hounds = require('../')

const quarry = errorWriter()

const hunt = hounds.release({
url: 'http://www.economist.com',
timeout: 60e3,
waitAfterLoadedFor: 500,
logTo: urlLogger(),
keepAlive: true,
nightmare: {
show: true, openDevTools: true
}
})
.on('error', err => {
console.error(err)
process.exit()
})
.on('end', process.exit)

hunt.pipe(quarry)
25 changes: 25 additions & 0 deletions examples/github.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
'use strict'

const urlLogger = require('./urlLogger')
const errorWriter = require('./errorWriter')

const hounds = require('../')

const quarry = errorWriter()

const hunt = hounds.release({
url: 'https://github.com',
timeout: 60e3,
waitAfterLoadedFor: 500,
logTo: urlLogger(),
nightmare: {
show: true, openDevTools: true
}
})
.on('error', err => {
console.error(err)
process.exit()
})
.on('end', process.exit)

hunt.pipe(quarry)
31 changes: 31 additions & 0 deletions examples/hackerNews.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
'use strict'

const urlLogger = require('./urlLogger')
const errorWriter = require('./errorWriter')

const hounds = require('../')

const quarry = errorWriter()

const hunt = hounds.release({
url: 'http://news.ycombinator.com',
timeout: 60e3,
waitAfterLoadedFor: 500,
logTo: urlLogger(),
urlFilter: url => {
// external only
return !/^https?:\/\/[a-zA-Z0-9]+\.?ycombinator\.com/.test(url)
},
nightmare: {
show: true, openDevTools: true
}
})
.on('error', err => {
console.error(err)
process.exit()
})
.on('end', process.exit)

hunt.pipe(quarry)


30 changes: 30 additions & 0 deletions examples/mdn.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
'use strict'

const urlLogger = require('./urlLogger')
const errorWriter = require('./errorWriter')

const hounds = require('../')

const quarry = errorWriter()

const hunt = hounds.release({
url: 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide',
timeout: 60e3,
waitAfterLoadedFor: 500,
logTo: urlLogger(),
urlFilter: url => {
return /^https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/JavaScript\/Guide\//.test(url)
},
nightmare: {
show: true, openDevTools: true
}
})
.on('error', err => {
console.error(err)
process.exit()
})
.on('end', process.exit)

hunt.pipe(quarry)


6 changes: 3 additions & 3 deletions examples/preAuth.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ const quarry = errorWriter()

const hunt = hounds.release({
url: 'http://localhost:8080',
maxFollows: 25,
waitAfterLoadedFor: 2500,
maxFollows: 5,
waitAfterLoadedFor: 1500,
before: nightmare => {
return nightmare
.viewport(1200, 800)
Expand All @@ -26,7 +26,7 @@ const hunt = hounds.release({
},
logTo: urlLogger(),
urlFilter: (url, domainFiltered) => {
return /\#/.test(url) && domainFiltered
return /\#./.test(url) && domainFiltered
},
nightmare: {
show: true, openDevTools: true
Expand Down
27 changes: 27 additions & 0 deletions examples/productHunt.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
'use strict'

const urlLogger = require('./urlLogger')
const errorWriter = require('./errorWriter')

const hounds = require('../')

const quarry = errorWriter()

const hunt = hounds.release({
url: 'https://www.producthunt.com/',
timeout: 60e3,
waitAfterLoadedFor: 500,
logTo: urlLogger(),
nightmare: {
show: true, openDevTools: true
}
})
.on('error', err => {
console.error(err)
process.exit()
})
.on('end', process.exit)

hunt.pipe(quarry)


0 comments on commit e4a0b3c

Please sign in to comment.