MCPcopy Create free account
hub / github.com/apify/crawlee-python / initialize

Method initialize

src/crawlee/_utils/recoverable_state.py:93–119  ·  view source on GitHub ↗

Initialize the recoverable state. This method must be called before using the recoverable state. It loads the saved state if persistence is enabled and registers the object to listen for PERSIST_STATE events. Returns: The loaded state model

(self)

Source from the content-addressed store, hash-verified

91 self._log = logger
92
93 async def initialize(self) -> TStateModel:
94 """Initialize the recoverable state.
95
96 This method must be called before using the recoverable state. It loads the saved state
97 if persistence is enabled and registers the object to listen for PERSIST_STATE events.
98
99 Returns:
100 The loaded state model
101 """
102 if self._persistence_enabled is False:
103 self._state = self._default_state.model_copy(deep=True)
104 return self.current_value
105
106 # Import here to avoid circular imports.
107
108 self._key_value_store = await self._persist_state_kvs_factory()
109
110 await self._load_saved_state()
111
112 if self._persistence_enabled is True:
113 # Import here to avoid circular imports.
114 from crawlee import service_locator # noqa: PLC0415
115
116 event_manager = service_locator.get_event_manager()
117 event_manager.on(event=Event.PERSIST_STATE, listener=self.persist_state)
118
119 return self.current_value
120
121 async def teardown(self) -> None:
122 """Clean up resources used by the recoverable state.

Calls 3

_load_saved_stateMethod · 0.95
get_event_managerMethod · 0.80
onMethod · 0.80