@@ -399,6 +399,7 @@ async def extract_links(
399399 robots_txt_file = await self ._get_robots_txt_file_for_url (context .request .url )
400400
401401 kwargs .setdefault ('strategy' , 'same-hostname' )
402+ strategy = kwargs .get ('strategy' , 'same-hostname' )
402403
403404 elements = await context .page .query_selector_all (selector )
404405 links_iterator : Iterator [str ] = iter (
@@ -417,17 +418,19 @@ async def extract_links(
417418 skipped = iter ([])
418419
419420 for url in self ._enqueue_links_filter_iterator (links_iterator , context .request .url , ** kwargs ):
420- request_option = RequestOptions ({'url' : url , 'user_data' : {** base_user_data }, 'label' : label })
421+ request_options = RequestOptions (
422+ url = url , user_data = {** base_user_data }, label = label , enqueue_strategy = strategy
423+ )
421424
422425 if transform_request_function :
423- transform_request_option = transform_request_function (request_option )
424- if transform_request_option == 'skip' :
426+ transform_request_options = transform_request_function (request_options )
427+ if transform_request_options == 'skip' :
425428 continue
426- if transform_request_option != 'unchanged' :
427- request_option = transform_request_option
429+ if transform_request_options != 'unchanged' :
430+ request_options = transform_request_options
428431
429432 try :
430- request = Request .from_url (** request_option )
433+ request = Request .from_url (** request_options )
431434 except ValidationError as exc :
432435 context .log .debug (
433436 f'Skipping URL "{ url } " due to invalid format: { exc } . '
0 commit comments