<a name="aea.protocols.generator.extract_specification"></a>
# aea.protocols.generator.extract`_`specification

This module extracts a valid protocol specification into pythonic objects.

<a name="aea.protocols.generator.extract_specification.PythonicProtocolSpecification"></a>
## PythonicProtocolSpecification Objects

```python
class PythonicProtocolSpecification()
```

This class represents a protocol specification in python.

<a name="aea.protocols.generator.extract_specification.PythonicProtocolSpecification.__init__"></a>
#### `__`init`__`

```python
 | __init__() -> None
```

Instantiate a Pythonic protocol specification.

**Returns**:

None

<a name="aea.protocols.generator.extract_specification.extract"></a>
#### extract

```python
extract(protocol_specification: ProtocolSpecification) -> PythonicProtocolSpecification
```

Converts a protocol specification into a Pythonic protocol specification.

**Arguments**:

- `protocol_specification`: a protocol specification

**Returns**:

a Pythonic protocol specification

