artoo.js The client-side scraping companion.

artoo.store


artoo.js' store module provides you with a useful Storage interface. It becomes really handy when some persistent data has to be saved and accessed throughout a scraping session.

If you are unfamiliar with localStorage and its affiliates, it is highly advisable that you start by reading some documentation to learn their downsides.

The localStorage is used by default. If you need to change this, you should use the relevant setting.

Note also that artoo.store can be accessed through the artoo.s shortcut if needed.



artoo.store

artoo.store is a function having for alias artoo.store.get and returning either the whole store as a JavaScript object or only one key if specified.

artoo.store([key]);

Examples

// Retrieving one key
artoo.store('hello');
>>> 'world'

// Retrieving the whole store
artoo.store();
>>> {
  hello: 'world',
  color: 'blue',
  number: 4
}

artoo.store.getAll

artoo.store.getAll is the same as calling artoo.store without specifying a key, meaning that you will retrieve the whole store as a JavaScript object.


artoo.store.keys

artoo.store.keys is a function returning an array of the keys in the store.

Example

artoo.store.keys();
>>> ['hello', 'color', 'number'];

artoo.store.set

artoo.store.set lets you set keys to the store while taking care of JSON stringification for you. Contrary to localStorage standard interface, you need not worry about what you insert into the store when using artoo.store module.

artoo.store.set(key, value);

Examples

// Setting a string
artoo.store.set('hello', 'world');

// Setting a number
artoo.store.set('number', 4);

// Setting an object
artoo.store.set('object', {key1: 'ok', key2: 'ko'});

artoo.store.pushTo

artoo.store.pushTo is a little helper that enables you to push to a store array without having to retrieve it first and reset it after the item is pushed.

artoo.store.pushTo(arrayKey, item);

Note that artoo will stop you if you try to push to a non-array value.


artoo.store.update

artoo.store.update is a little helper that enables you to update a store object without having to retrieve it first and reset it after the object is updated.

artoo.store.update(objectKey, {key1: 'modified key'});

Note that artoo will stop you if you try to push to a non-object value.


artoo.store.remove

artoo.store.remove simply removes the given key from the store.

artoo.store.remove(key);

artoo.store.removeAll

artoo.store.removeAll simply cleans the store of everything.

artoo.store.removeAll();

Note that artoo.store.clean also exists as a alias for this method.