airbyte-source-google-search-console 1.5.15__py3-none-any.whl → 1.5.16.dev202503120000__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: airbyte-source-google-search-console
3
- Version: 1.5.15
3
+ Version: 1.5.16.dev202503120000
4
4
  Summary: Source implementation for Google Search Console.
5
5
  License: Elv2
6
6
  Author: Airbyte
@@ -19,8 +19,8 @@ source_google_search_console/schemas/sites.json,sha256=WNiCRuStPL1YkJiFa8FEbNJmq
19
19
  source_google_search_console/service_account_authenticator.py,sha256=gjUxt0xFxj82uviCQNTsA1Jlee__UDhYNjE7bRO1G0U,1227
20
20
  source_google_search_console/source.py,sha256=8n10_agSa2rvPvEyBvOfOpmpEardbEhi3H0vlK2A4_g,10002
21
21
  source_google_search_console/spec.json,sha256=WYtFvaSqWYGm1Dt2yV9G92U78Q94rh9oarbxJe3H7xo,8470
22
- source_google_search_console/streams.py,sha256=r_UtdC307x80gB1yTR7-yls0VswdFDPfVKLWfExt4Zc,19823
23
- airbyte_source_google_search_console-1.5.15.dist-info/METADATA,sha256=569XtJploozRqevGaUEOEmOZD310yOn37q_Shm9eflU,5630
24
- airbyte_source_google_search_console-1.5.15.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
25
- airbyte_source_google_search_console-1.5.15.dist-info/entry_points.txt,sha256=DMcgc9bCX-Vt6hm_68pa77qS3eGdeMhg-UdlFc-XKUM,85
26
- airbyte_source_google_search_console-1.5.15.dist-info/RECORD,,
22
+ source_google_search_console/streams.py,sha256=OQJ8kQS_QZBkHZE3KNNpqNCDuixE9jeQ91PkJwv9o6E,19695
23
+ airbyte_source_google_search_console-1.5.16.dev202503120000.dist-info/METADATA,sha256=1fH-_BgBDDe1MejjqIvGZPqTPy_m-LxmlfFr9uMgwAc,5646
24
+ airbyte_source_google_search_console-1.5.16.dev202503120000.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
25
+ airbyte_source_google_search_console-1.5.16.dev202503120000.dist-info/entry_points.txt,sha256=DMcgc9bCX-Vt6hm_68pa77qS3eGdeMhg-UdlFc-XKUM,85
26
+ airbyte_source_google_search_console-1.5.16.dev202503120000.dist-info/RECORD,,
@@ -371,7 +371,19 @@ class SearchAppearance(SearchAnalytics):
371
371
  primary_key = None
372
372
  dimensions = ["searchAppearance"]
373
373
 
374
-
374
+ def request_body_json(
375
+ self,
376
+ stream_state: Mapping[str, Any] = None,
377
+ stream_slice: Mapping[str, Any] = None,
378
+ next_page_token: Mapping[str, Any] = None,
379
+ ) -> Optional[Union[Dict[str, Any], str]]:
380
+ data = super().request_body_json(stream_state, stream_slice, next_page_token)
381
+
382
+ fields_to_remove = ["aggregationType", "startRow", "rowLimit", "dataState"]
383
+ for field in fields_to_remove:
384
+ data.pop(field, None)
385
+
386
+ return data
375
387
  class SearchByKeyword(SearchAnalytics):
376
388
  """
377
389
  Adds searchAppearance value to dimensionFilterGroups in json body
@@ -380,23 +392,13 @@ class SearchByKeyword(SearchAnalytics):
380
392
  groupType: "and" - Whether all filters in this group must return true ("and"), or one or more must return true (not yet supported).
381
393
  filters: {"dimension": "searchAppearance", "operator": "equals", "expression": keyword}
382
394
  """
395
+ search_types = ["web", "news", "image", "video", "discover", "googleNews"]
383
396
 
384
397
  def stream_slices(
385
398
  self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None
386
399
  ) -> Iterable[Optional[Mapping[str, Any]]]:
387
- search_appearance_stream = SearchAppearance(self._session.auth, self._site_urls, self._start_date, self._end_date)
388
-
389
400
  for stream_slice in super().stream_slices(sync_mode, cursor_field, stream_state):
390
- keywords_records = search_appearance_stream.read_records(
391
- sync_mode=SyncMode.full_refresh, stream_state=stream_state, stream_slice=stream_slice
392
- )
393
- keywords = {record["searchAppearance"] for record in keywords_records}
394
-
395
- for keyword in keywords:
396
- filters = {"dimension": "searchAppearance", "operator": "equals", "expression": keyword}
397
- stream_slice["dimensionFilterGroups"] = [{"groupType": "and", "filters": filters}]
398
-
399
- yield stream_slice
401
+ yield stream_slice
400
402
 
401
403
  def request_body_json(
402
404
  self,
@@ -405,7 +407,6 @@ class SearchByKeyword(SearchAnalytics):
405
407
  next_page_token: Mapping[str, Any] = None,
406
408
  ) -> Optional[Union[Dict[str, Any], str]]:
407
409
  data = super().request_body_json(stream_state, stream_slice, next_page_token)
408
- data["dimensionFilterGroups"] = stream_slice["dimensionFilterGroups"]
409
410
  return data
410
411
 
411
412