exa-py 1.5.0__py3-none-any.whl → 1.5.2__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.

Potentially problematic release.


This version of exa-py might be problematic. Click here for more details.

exa_py/api.py CHANGED
@@ -148,6 +148,7 @@ CONTENTS_OPTIONS_TYPES = {
148
148
 
149
149
  CONTENTS_ENDPOINT_OPTIONS_TYPES = {
150
150
  "subpages": [int],
151
+ "subpage_target": [str, list],
151
152
  "extras": [dict],
152
153
  }
153
154
 
@@ -545,7 +546,7 @@ class Exa:
545
546
  self,
546
547
  api_key: Optional[str],
547
548
  base_url: str = "https://api.exa.ai",
548
- user_agent: str = "exa-py 1.5.0",
549
+ user_agent: str = "exa-py 1.5.2",
549
550
  ):
550
551
  """Initialize the Exa client with the provided API key and optional base URL and user agent.
551
552
 
@@ -690,6 +691,7 @@ class Exa:
690
691
  category: Optional[str] = None,
691
692
  livecrawl_timeout: Optional[int] = None,
692
693
  subpages: Optional[int] = None,
694
+ subpage_target: Optional[Union[str, List[str]]] = None,
693
695
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
694
696
  filter_empty_results: Optional[bool] = None,
695
697
  extras: Optional[ExtrasOptions] = None,
@@ -717,6 +719,7 @@ class Exa:
717
719
  category: Optional[str] = None,
718
720
  livecrawl_timeout: Optional[int] = None,
719
721
  subpages: Optional[int] = None,
722
+ subpage_target: Optional[Union[str, List[str]]] = None,
720
723
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
721
724
  filter_empty_results: Optional[bool] = None,
722
725
  extras: Optional[ExtrasOptions] = None,
@@ -743,6 +746,7 @@ class Exa:
743
746
  category: Optional[str] = None,
744
747
  livecrawl_timeout: Optional[int] = None,
745
748
  subpages: Optional[int] = None,
749
+ subpage_target: Optional[Union[str, List[str]]] = None,
746
750
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
747
751
  filter_empty_results: Optional[bool] = None,
748
752
  extras: Optional[ExtrasOptions] = None,
@@ -769,6 +773,7 @@ class Exa:
769
773
  type: Optional[str] = None,
770
774
  category: Optional[str] = None,
771
775
  subpages: Optional[int] = None,
776
+ subpage_target: Optional[Union[str, List[str]]] = None,
772
777
  livecrawl_timeout: Optional[int] = None,
773
778
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
774
779
  filter_empty_results: Optional[bool] = None,
@@ -797,6 +802,7 @@ class Exa:
797
802
  category: Optional[str] = None,
798
803
  livecrawl_timeout: Optional[int] = None,
799
804
  subpages: Optional[int] = None,
805
+ subpage_target: Optional[Union[str, List[str]]] = None,
800
806
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
801
807
  filter_empty_results: Optional[bool] = None,
802
808
  extras: Optional[ExtrasOptions] = None,
@@ -826,6 +832,7 @@ class Exa:
826
832
  livecrawl_timeout: Optional[int] = None,
827
833
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
828
834
  subpages: Optional[int] = None,
835
+ subpage_target: Optional[Union[str, List[str]]] = None,
829
836
  filter_empty_results: Optional[bool] = None,
830
837
  extras: Optional[ExtrasOptions] = None,
831
838
  ) -> SearchResponse[ResultWithTextAndHighlightsAndSummary]:
@@ -837,12 +844,12 @@ class Exa:
837
844
  for k, v in {"query": query, **kwargs}.items()
838
845
  if k != "self" and v is not None
839
846
  }
840
- if "text" not in options and "highlights" not in options and "summary" not in options and "subpages" not in options and "extras" not in options:
847
+ if "text" not in options and "highlights" not in options and "summary" not in options and "extras" not in options:
841
848
  options["text"] = True
842
849
  validate_search_options(
843
850
  options, {**SEARCH_OPTIONS_TYPES, **CONTENTS_OPTIONS_TYPES, **CONTENTS_ENDPOINT_OPTIONS_TYPES}
844
851
  )
845
- options = nest_fields(options, ["text", "highlights", "summary", "subpages", "livecrawl", "livecrawl_timeout", "extras"], "contents")
852
+ options = nest_fields(options, ["text", "highlights", "summary", "subpages", "subpage_target", "livecrawl", "livecrawl_timeout", "extras"], "contents")
846
853
  options = to_camel_case(options)
847
854
  data = self.request("/search", options)
848
855
  return SearchResponse(
@@ -860,6 +867,7 @@ class Exa:
860
867
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
861
868
  filter_empty_results: Optional[bool] = None,
862
869
  subpages: Optional[int] = None,
870
+ subpage_target: Optional[Union[str, List[str]]] = None,
863
871
  extras: Optional[ExtrasOptions] = None,
864
872
  ) -> SearchResponse[ResultWithText]:
865
873
  ...
@@ -874,6 +882,7 @@ class Exa:
874
882
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
875
883
  filter_empty_results: Optional[bool] = None,
876
884
  subpages: Optional[int] = None,
885
+ subpage_target: Optional[Union[str, List[str]]] = None,
877
886
  extras: Optional[ExtrasOptions] = None,
878
887
  ) -> SearchResponse[ResultWithText]:
879
888
  ...
@@ -888,6 +897,7 @@ class Exa:
888
897
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
889
898
  filter_empty_results: Optional[bool] = None,
890
899
  subpages: Optional[int] = None,
900
+ subpage_target: Optional[Union[str, List[str]]] = None,
891
901
  extras: Optional[ExtrasOptions] = None,
892
902
  ) -> SearchResponse[ResultWithHighlights]:
893
903
  ...
@@ -903,6 +913,7 @@ class Exa:
903
913
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
904
914
  filter_empty_results: Optional[bool] = None,
905
915
  subpages: Optional[int] = None,
916
+ subpage_target: Optional[Union[str, List[str]]] = None,
906
917
  extras: Optional[ExtrasOptions] = None,
907
918
  ) -> SearchResponse[ResultWithTextAndHighlights]:
908
919
  ...
@@ -917,6 +928,7 @@ class Exa:
917
928
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
918
929
  filter_empty_results: Optional[bool] = None,
919
930
  subpages: Optional[int] = None,
931
+ subpage_target: Optional[Union[str, List[str]]] = None,
920
932
  extras: Optional[ExtrasOptions] = None,
921
933
  ) -> SearchResponse[ResultWithSummary]:
922
934
  ...
@@ -932,6 +944,7 @@ class Exa:
932
944
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
933
945
  filter_empty_results: Optional[bool] = None,
934
946
  subpages: Optional[int] = None,
947
+ subpage_target: Optional[Union[str, List[str]]] = None,
935
948
  extras: Optional[ExtrasOptions] = None,
936
949
  ) -> SearchResponse[ResultWithTextAndSummary]:
937
950
  ...
@@ -947,6 +960,7 @@ class Exa:
947
960
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
948
961
  filter_empty_results: Optional[bool] = None,
949
962
  subpages: Optional[int] = None,
963
+ subpage_target: Optional[Union[str, List[str]]] = None,
950
964
  extras: Optional[ExtrasOptions] = None,
951
965
  ) -> SearchResponse[ResultWithHighlightsAndSummary]:
952
966
  ...
@@ -963,6 +977,7 @@ class Exa:
963
977
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
964
978
  filter_empty_results: Optional[bool] = None,
965
979
  subpages: Optional[int] = None,
980
+ subpage_target: Optional[Union[str, List[str]]] = None,
966
981
  extras: Optional[ExtrasOptions] = None,
967
982
  ) -> SearchResponse[ResultWithTextAndHighlightsAndSummary]:
968
983
  ...
@@ -973,7 +988,7 @@ class Exa:
973
988
  for k, v in {"ids": ids, **kwargs}.items()
974
989
  if k != "self" and v is not None
975
990
  }
976
- if "text" not in options and "highlights" not in options and "summary" not in options and "extras" not in options and "subpages" not in options:
991
+ if "text" not in options and "highlights" not in options and "summary" not in options and "extras" not in options:
977
992
  options["text"] = True
978
993
  validate_search_options(options, {**CONTENTS_OPTIONS_TYPES, **CONTENTS_ENDPOINT_OPTIONS_TYPES})
979
994
  options = to_camel_case(options)
@@ -1030,6 +1045,7 @@ class Exa:
1030
1045
  category: Optional[str] = None,
1031
1046
  livecrawl_timeout: Optional[int] = None,
1032
1047
  subpages: Optional[int] = None,
1048
+ subpage_target: Optional[Union[str, List[str]]] = None,
1033
1049
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1034
1050
  filter_empty_results: Optional[bool] = None,
1035
1051
  extras: Optional[ExtrasOptions] = None,
@@ -1055,6 +1071,7 @@ class Exa:
1055
1071
  category: Optional[str] = None,
1056
1072
  livecrawl_timeout: Optional[int] = None,
1057
1073
  subpages: Optional[int] = None,
1074
+ subpage_target: Optional[Union[str, List[str]]] = None,
1058
1075
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1059
1076
  filter_empty_results: Optional[bool] = None,
1060
1077
  extras: Optional[ExtrasOptions] = None,
@@ -1079,6 +1096,7 @@ class Exa:
1079
1096
  exclude_source_domain: Optional[bool] = None,
1080
1097
  category: Optional[str] = None,
1081
1098
  subpages: Optional[int] = None,
1099
+ subpage_target: Optional[Union[str, List[str]]] = None,
1082
1100
  livecrawl_timeout: Optional[int] = None,
1083
1101
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1084
1102
  filter_empty_results: Optional[bool] = None,
@@ -1106,6 +1124,7 @@ class Exa:
1106
1124
  category: Optional[str] = None,
1107
1125
  livecrawl_timeout: Optional[int] = None,
1108
1126
  subpages: Optional[int] = None,
1127
+ subpage_target: Optional[Union[str, List[str]]] = None,
1109
1128
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1110
1129
  filter_empty_results: Optional[bool] = None,
1111
1130
  extras: Optional[ExtrasOptions] = None,
@@ -1132,6 +1151,7 @@ class Exa:
1132
1151
  livecrawl_timeout: Optional[int] = None,
1133
1152
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1134
1153
  subpages: Optional[int] = None,
1154
+ subpage_target: Optional[Union[str, List[str]]] = None,
1135
1155
  filter_empty_results: Optional[bool] = None,
1136
1156
  extras: Optional[ExtrasOptions] = None,
1137
1157
  ) -> SearchResponse[ResultWithSummary]:
@@ -1158,6 +1178,7 @@ class Exa:
1158
1178
  livecrawl_timeout: Optional[int] = None,
1159
1179
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1160
1180
  subpages: Optional[int] = None,
1181
+ subpage_target: Optional[Union[str, List[str]]] = None,
1161
1182
  filter_empty_results: Optional[bool] = None,
1162
1183
  extras: Optional[ExtrasOptions] = None,
1163
1184
  ) -> SearchResponse[ResultWithTextAndSummary]:
@@ -1184,6 +1205,7 @@ class Exa:
1184
1205
  livecrawl_timeout: Optional[int] = None,
1185
1206
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1186
1207
  subpages: Optional[int] = None,
1208
+ subpage_target: Optional[Union[str, List[str]]] = None,
1187
1209
  filter_empty_results: Optional[bool] = None,
1188
1210
  extras: Optional[ExtrasOptions] = None,
1189
1211
  ) -> SearchResponse[ResultWithHighlightsAndSummary]:
@@ -1211,6 +1233,7 @@ class Exa:
1211
1233
  livecrawl_timeout: Optional[int] = None,
1212
1234
  livecrawl: Optional[LIVECRAWL_OPTIONS] = None,
1213
1235
  subpages: Optional[int] = None,
1236
+ subpage_target: Optional[Union[str, List[str]]] = None,
1214
1237
  filter_empty_results: Optional[bool] = None,
1215
1238
  extras: Optional[ExtrasOptions] = None,
1216
1239
  ) -> SearchResponse[ResultWithTextAndHighlightsAndSummary]:
@@ -1222,13 +1245,13 @@ class Exa:
1222
1245
  for k, v in {"url": url, **kwargs}.items()
1223
1246
  if k != "self" and v is not None
1224
1247
  }
1225
- if "text" not in options and "highlights" not in options and "summary" not in options and "extras" not in options and "subpages" not in options:
1248
+ if "text" not in options and "highlights" not in options and "summary" not in options:
1226
1249
  options["text"] = True
1227
1250
  validate_search_options(
1228
1251
  options, {**FIND_SIMILAR_OPTIONS_TYPES, **CONTENTS_OPTIONS_TYPES, **CONTENTS_ENDPOINT_OPTIONS_TYPES}
1229
1252
  )
1230
1253
  options = to_camel_case(options)
1231
- options = nest_fields(options, ["text", "highlights", "summary", "subpages", "livecrawl", "livecrawl_timeout", "extras"], "contents")
1254
+ options = nest_fields(options, ["text", "highlights", "summary", "subpages", "subpage_target", "livecrawl", "livecrawl_timeout", "extras"], "contents")
1232
1255
  data = self.request("/findSimilar", options)
1233
1256
  return SearchResponse(
1234
1257
  [Result(**to_snake_case(result)) for result in data["results"]],
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: exa_py
3
- Version: 1.5.0
3
+ Version: 1.5.2
4
4
  Summary: Python SDK for Exa API.
5
5
  Home-page: https://github.com/exa-labs/exa-py
6
6
  Author: Exa
@@ -0,0 +1,8 @@
1
+ exa_py/__init__.py,sha256=1selemczpRm1y8V9cWNm90LARnU1jbtyp-Qpx3c7cTw,28
2
+ exa_py/api.py,sha256=kiMDP5WjBta418aKEe1b_OSBB_WDEDYi4VrFtxMlrmY,53125
3
+ exa_py/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ exa_py/utils.py,sha256=Rc1FJjoR9LQ7L_OJM91Sd1GNkbHjcLyEvJENhRix6gc,2405
5
+ exa_py-1.5.2.dist-info/METADATA,sha256=IzYsUfFRBxXyvZ_dGuL_RQ9kzSZc-mLryHLr6U2MrzI,3030
6
+ exa_py-1.5.2.dist-info/WHEEL,sha256=pL8R0wFFS65tNSRnaOVrsw9EOkOqxLrlUPenUYnJKNo,91
7
+ exa_py-1.5.2.dist-info/top_level.txt,sha256=Mfkmscdw9HWR1PtVhU1gAiVo6DHu_tyiVdb89gfZBVI,7
8
+ exa_py-1.5.2.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- exa_py/__init__.py,sha256=1selemczpRm1y8V9cWNm90LARnU1jbtyp-Qpx3c7cTw,28
2
- exa_py/api.py,sha256=w543RRGAsZ6veJq887RulL805FPKDKlUNh_O_WODNEs,51764
3
- exa_py/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- exa_py/utils.py,sha256=Rc1FJjoR9LQ7L_OJM91Sd1GNkbHjcLyEvJENhRix6gc,2405
5
- exa_py-1.5.0.dist-info/METADATA,sha256=jwPCrh5cVScT7T9VITZh0_DpqP4iYjVQ-_mUwmuYwHI,3030
6
- exa_py-1.5.0.dist-info/WHEEL,sha256=pL8R0wFFS65tNSRnaOVrsw9EOkOqxLrlUPenUYnJKNo,91
7
- exa_py-1.5.0.dist-info/top_level.txt,sha256=Mfkmscdw9HWR1PtVhU1gAiVo6DHu_tyiVdb89gfZBVI,7
8
- exa_py-1.5.0.dist-info/RECORD,,
File without changes