hyperbrowser 0.27.0__tar.gz → 0.29.0__tar.gz

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 hyperbrowser might be problematic. Click here for more details.

Files changed (36) hide show
  1. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/PKG-INFO +1 -1
  2. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/session.py +7 -0
  3. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/session.py +7 -0
  4. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/consts.py +103 -0
  5. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/extract.py +1 -0
  6. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/session.py +27 -3
  7. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/pyproject.toml +1 -1
  8. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/LICENSE +0 -0
  9. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/README.md +0 -0
  10. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/__init__.py +0 -0
  11. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/async_client.py +0 -0
  12. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/base.py +0 -0
  13. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/crawl.py +0 -0
  14. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/extension.py +0 -0
  15. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/extract.py +0 -0
  16. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/profile.py +0 -0
  17. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/async_manager/scrape.py +0 -0
  18. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/crawl.py +0 -0
  19. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/extension.py +0 -0
  20. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/extract.py +0 -0
  21. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/profile.py +0 -0
  22. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/managers/sync_manager/scrape.py +0 -0
  23. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/client/sync.py +0 -0
  24. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/config.py +0 -0
  25. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/exceptions.py +0 -0
  26. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/crawl.py +0 -0
  27. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/extension.py +0 -0
  28. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/profile.py +0 -0
  29. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/models/scrape.py +0 -0
  30. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/tools/__init__.py +0 -0
  31. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/tools/anthropic.py +0 -0
  32. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/tools/openai.py +0 -0
  33. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/tools/schema.py +0 -0
  34. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/transport/async_transport.py +0 -0
  35. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/transport/base.py +0 -0
  36. {hyperbrowser-0.27.0 → hyperbrowser-0.29.0}/hyperbrowser/transport/sync.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: hyperbrowser
3
- Version: 0.27.0
3
+ Version: 0.29.0
4
4
  Summary: Python SDK for hyperbrowser
5
5
  License: MIT
6
6
  Author: Nikhil Shahi
@@ -2,6 +2,7 @@ from typing import List
2
2
  from ....models.session import (
3
3
  BasicResponse,
4
4
  CreateSessionParams,
5
+ GetSessionRecordingUrlResponse,
5
6
  SessionDetail,
6
7
  SessionListParams,
7
8
  SessionListResponse,
@@ -49,3 +50,9 @@ class SessionManager:
49
50
  self._client._build_url(f"/session/{id}/recording")
50
51
  )
51
52
  return [SessionRecording(**recording) for recording in response.data]
53
+
54
+ async def get_recording_url(self, id: str) -> GetSessionRecordingUrlResponse:
55
+ response = await self._client.transport.get(
56
+ self._client._build_url(f"/session/{id}/recording-url")
57
+ )
58
+ return GetSessionRecordingUrlResponse(**response.data)
@@ -2,6 +2,7 @@ from typing import List
2
2
  from ....models.session import (
3
3
  BasicResponse,
4
4
  CreateSessionParams,
5
+ GetSessionRecordingUrlResponse,
5
6
  SessionDetail,
6
7
  SessionListParams,
7
8
  SessionListResponse,
@@ -47,3 +48,9 @@ class SessionManager:
47
48
  self._client._build_url(f"/session/{id}/recording")
48
49
  )
49
50
  return [SessionRecording(**recording) for recording in response.data]
51
+
52
+ def get_recording_url(self, id: str) -> GetSessionRecordingUrlResponse:
53
+ response = self._client.transport.get(
54
+ self._client._build_url(f"/session/{id}/recording-url")
55
+ )
56
+ return GetSessionRecordingUrlResponse(**response.data)
@@ -486,3 +486,106 @@ ISO639_1 = Literal[
486
486
  "zh",
487
487
  "zu",
488
488
  ]
489
+
490
+ State = Literal[
491
+ "AL",
492
+ "AK",
493
+ "AZ",
494
+ "AR",
495
+ "CA",
496
+ "CO",
497
+ "CT",
498
+ "DE",
499
+ "FL",
500
+ "GA",
501
+ "HI",
502
+ "ID",
503
+ "IL",
504
+ "IN",
505
+ "IA",
506
+ "KS",
507
+ "KY",
508
+ "LA",
509
+ "ME",
510
+ "MD",
511
+ "MA",
512
+ "MI",
513
+ "MN",
514
+ "MS",
515
+ "MO",
516
+ "MT",
517
+ "NE",
518
+ "NV",
519
+ "NH",
520
+ "NJ",
521
+ "NM",
522
+ "NY",
523
+ "NC",
524
+ "ND",
525
+ "OH",
526
+ "OK",
527
+ "OR",
528
+ "PA",
529
+ "RI",
530
+ "SC",
531
+ "SD",
532
+ "TN",
533
+ "TX",
534
+ "UT",
535
+ "VT",
536
+ "VA",
537
+ "WA",
538
+ "WV",
539
+ "WI",
540
+ "WY",
541
+ "al",
542
+ "ak",
543
+ "az",
544
+ "ar",
545
+ "ca",
546
+ "co",
547
+ "ct",
548
+ "de",
549
+ "fl",
550
+ "ga",
551
+ "hi",
552
+ "id",
553
+ "il",
554
+ "in",
555
+ "ia",
556
+ "ks",
557
+ "ky",
558
+ "la",
559
+ "me",
560
+ "md",
561
+ "ma",
562
+ "mi",
563
+ "mn",
564
+ "ms",
565
+ "mo",
566
+ "mt",
567
+ "ne",
568
+ "nv",
569
+ "nh",
570
+ "nj",
571
+ "nm",
572
+ "ny",
573
+ "nc",
574
+ "nd",
575
+ "oh",
576
+ "ok",
577
+ "or",
578
+ "pa",
579
+ "ri",
580
+ "sc",
581
+ "sd",
582
+ "tn",
583
+ "tx",
584
+ "ut",
585
+ "vt",
586
+ "va",
587
+ "wa",
588
+ "wv",
589
+ "wi",
590
+ "wy",
591
+ ]
@@ -24,6 +24,7 @@ class StartExtractJobParams(BaseModel):
24
24
  schema_: Optional[Any] = pydantic.Field(
25
25
  None, alias="schema", serialization_alias="schema"
26
26
  )
27
+ wait_for: Optional[int] = Field(default=None, serialization_alias="waitFor")
27
28
  session_options: Optional[CreateSessionParams] = Field(
28
29
  default=None, serialization_alias="sessionOptions"
29
30
  )
@@ -3,7 +3,13 @@ from typing import Any, List, Literal, Optional, Union
3
3
 
4
4
  from pydantic import BaseModel, ConfigDict, Field, field_validator
5
5
 
6
- from hyperbrowser.models.consts import ISO639_1, Country, OperatingSystem, Platform
6
+ from hyperbrowser.models.consts import (
7
+ ISO639_1,
8
+ Country,
9
+ OperatingSystem,
10
+ Platform,
11
+ State,
12
+ )
7
13
 
8
14
  SessionStatus = Literal["active", "closed", "error"]
9
15
 
@@ -140,6 +146,8 @@ class CreateSessionParams(BaseModel):
140
146
  proxy_country: Optional[Country] = Field(
141
147
  default="US", serialization_alias="proxyCountry"
142
148
  )
149
+ proxy_state: Optional[State] = Field(default=None, serialization_alias="proxyState")
150
+ proxy_city: Optional[str] = Field(default=None, serialization_alias="proxyCity")
143
151
  operating_systems: Optional[List[OperatingSystem]] = Field(
144
152
  default=None, serialization_alias="operatingSystems"
145
153
  )
@@ -162,8 +170,12 @@ class CreateSessionParams(BaseModel):
162
170
  accept_cookies: Optional[bool] = Field(
163
171
  default=None, serialization_alias="acceptCookies"
164
172
  )
165
- url_blocklist: Optional[List[str]] = Field(default=None, serialization_alias="urlBlocklist")
166
- browser_args: Optional[List[str]] = Field(default=None, serialization_alias="browserArgs")
173
+ url_blocklist: Optional[List[str]] = Field(
174
+ default=None, serialization_alias="urlBlocklist"
175
+ )
176
+ browser_args: Optional[List[str]] = Field(
177
+ default=None, serialization_alias="browserArgs"
178
+ )
167
179
 
168
180
 
169
181
  class SessionRecording(BaseModel):
@@ -179,3 +191,15 @@ class SessionRecording(BaseModel):
179
191
  data: Any
180
192
  timestamp: int
181
193
  delay: Optional[int] = None
194
+
195
+
196
+ class GetSessionRecordingUrlResponse(BaseModel):
197
+ """
198
+ Response containing the signed URL for the session recording.
199
+ """
200
+
201
+ model_config = ConfigDict(
202
+ populate_by_alias=True,
203
+ )
204
+
205
+ recording_url: str = Field(alias="recordingUrl")
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "hyperbrowser"
3
- version = "0.27.0"
3
+ version = "0.29.0"
4
4
  description = "Python SDK for hyperbrowser"
5
5
  authors = ["Nikhil Shahi <nshahi1998@gmail.com>"]
6
6
  license = "MIT"
File without changes
File without changes