@@ -557,18 +557,20 @@ async def get_dataset(
557557 * ,
558558 id : str | None = None ,
559559 name : str | None = None ,
560+ alias : str | None = None ,
560561 ) -> Dataset :
561562 """Return the `Dataset` with the given ID or name. If none is provided, return the default one."""
562- return await Dataset .open (id = id , name = name )
563+ return await Dataset .open (id = id , name = name , alias = alias )
563564
564565 async def get_key_value_store (
565566 self ,
566567 * ,
567568 id : str | None = None ,
568569 name : str | None = None ,
570+ alias : str | None = None ,
569571 ) -> KeyValueStore :
570572 """Return the `KeyValueStore` with the given ID or name. If none is provided, return the default KVS."""
571- return await KeyValueStore .open (id = id , name = name )
573+ return await KeyValueStore .open (id = id , name = name , alias = alias )
572574
573575 def error_handler (
574576 self , handler : ErrorHandler [TCrawlingContext | BasicCrawlingContext ]
@@ -772,6 +774,7 @@ async def get_data(
772774 self ,
773775 dataset_id : str | None = None ,
774776 dataset_name : str | None = None ,
777+ dataset_alias : str | None = None ,
775778 ** kwargs : Unpack [GetDataKwargs ],
776779 ) -> DatasetItemsListPage :
777780 """Retrieve data from a `Dataset`.
@@ -781,20 +784,22 @@ async def get_data(
781784
782785 Args:
783786 dataset_id: The ID of the `Dataset`.
784- dataset_name: The name of the `Dataset`.
787+ dataset_name: The name of the `Dataset` (global scope).
788+ dataset_alias: The alias of the `Dataset` (run scope, unnamed).
785789 kwargs: Keyword arguments to be passed to the `Dataset.get_data()` method.
786790
787791 Returns:
788792 The retrieved data.
789793 """
790- dataset = await Dataset .open (id = dataset_id , name = dataset_name )
794+ dataset = await Dataset .open (id = dataset_id , name = dataset_name , alias = dataset_alias )
791795 return await dataset .get_data (** kwargs )
792796
793797 async def export_data (
794798 self ,
795799 path : str | Path ,
796800 dataset_id : str | None = None ,
797801 dataset_name : str | None = None ,
802+ dataset_alias : str | None = None ,
798803 ) -> None :
799804 """Export all items from a Dataset to a JSON or CSV file.
800805
@@ -805,9 +810,10 @@ async def export_data(
805810 Args:
806811 path: The destination file path. Must end with '.json' or '.csv'.
807812 dataset_id: The ID of the Dataset to export from. If None, uses `name` parameter instead.
808- dataset_name: The name of the Dataset to export from. If None, uses `id` parameter instead.
813+ dataset_name: The name of the Dataset to export from (global scope). If None, uses `id` parameter instead.
814+ dataset_alias: The alias of the Dataset to export from (run scope, unnamed).
809815 """
810- dataset = await self .get_dataset (id = dataset_id , name = dataset_name )
816+ dataset = await self .get_dataset (id = dataset_id , name = dataset_name , alias = dataset_alias )
811817
812818 path = path if isinstance (path , Path ) else Path (path )
813819 dst = path .open ('w' , newline = '' )
@@ -824,6 +830,7 @@ async def _push_data(
824830 data : list [dict [str , Any ]] | dict [str , Any ],
825831 dataset_id : str | None = None ,
826832 dataset_name : str | None = None ,
833+ dataset_alias : str | None = None ,
827834 ** kwargs : Unpack [PushDataKwargs ],
828835 ) -> None :
829836 """Push data to a `Dataset`.
@@ -834,10 +841,11 @@ async def _push_data(
834841 Args:
835842 data: The data to push to the `Dataset`.
836843 dataset_id: The ID of the `Dataset`.
837- dataset_name: The name of the `Dataset`.
844+ dataset_name: The name of the `Dataset` (global scope).
845+ dataset_alias: The alias of the `Dataset` (run scope, unnamed).
838846 kwargs: Keyword arguments to be passed to the `Dataset.push_data()` method.
839847 """
840- dataset = await self .get_dataset (id = dataset_id , name = dataset_name )
848+ dataset = await self .get_dataset (id = dataset_id , name = dataset_name , alias = dataset_alias )
841849 await dataset .push_data (data , ** kwargs )
842850
843851 def _should_retry_request (self , context : BasicCrawlingContext , error : Exception ) -> bool :
@@ -1226,8 +1234,8 @@ async def _commit_key_value_store_changes(
12261234 result : RequestHandlerRunResult , get_kvs : GetKeyValueStoreFromRequestHandlerFunction
12271235 ) -> None :
12281236 """Store key value store changes recorded in result."""
1229- for (id , name ), changes in result .key_value_store_changes .items ():
1230- store = await get_kvs (id = id , name = name )
1237+ for (id , name , alias ), changes in result .key_value_store_changes .items ():
1238+ store = await get_kvs (id = id , name = name , alias = alias )
12311239 for key , value in changes .updates .items ():
12321240 await store .set_value (key , value .content , value .content_type )
12331241
0 commit comments