---
name: "Scrappy::Session"
section: "3pm"
platform: "linux"
package: "libscrappy-perl"
version: "0.94112090-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Scrappy::Session"
---

# Scrappy::Session(3pm)

Scrappy Scraper Session Handling

## NAME

Scrappy::Session - Scrappy Scraper Session Handling

## VERSION

version 0.94112090

## SYNOPSIS

```
    #!/usr/bin/perl
    use Scrappy::Session;
    my  $session = Scrappy::Session->new;

        -f 'scraper.sess' ?
        $session->load('scraper.sess');
        $session->write('scraper.sess');

        $session->stash('foo' => 'bar');
        $session->stash('abc' => [('a'..'z')]);
```

## DESCRIPTION

Scrappy::Session provides YAML-Based session file handling for saving recorded data across multiple execution using the Scrappy framework.

### ATTRIBUTES

The following is a list of object attributes available with every Scrappy::Session instance.

*auto\_save*

The auto\_save attribute is a boolean that determines whether stash data is automatically saved to the session file on update.

```
    my  $session = Scrappy::Session->new;

        $session->load('scraper.sess');
        $session->stash('foo' => 'bar');

        # turn auto-saving off
        $session->auto_save(0);
        $session->stash('foo' => 'bar');
        $session->write; # explicit write
```

*file*

The file attribute gets/sets the filename of the current session file.

```
    my  $session = Scrappy::Session->new;

        $session->load('scraper.sess');
        $session->write('scraper.sess.bak');
        $session->file('scraper.sess');
```

## METHODS

### load

The load method is used to read-in a session file, it returns its data in the structure it was saved-in.

```
    my  $session = Scrappy::Session->new;
    my  $data = $session->load('scraper.sess');
```

### stash

The stash method accesses the stash object which is used to store data to be written to the session file.

```
    my  $session = Scrappy::Session->new;
        $session->load('scraper.sess');

        $session->stash('foo' => 'bar');
        $session->stash('abc' => [('a'..'z')]);
        $session->stash->{123} = [(1..9)];
```

### write

The write method is used to write-out a session file, it saves the data stored in the session stash and it returns the data written upon completion.

```
    my  $session = Scrappy::Session->new;

        $session->stash('foo' => 'bar');
        $session->stash('abc' => [('a'..'z')]);
        $session->stash->{123} = [(1..9)];

    my  $data = $session->write('scraper.sess');
```

## AUTHOR

Al Newkirk \<awncorp@cpan.org\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2010 by awncorp.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
