hyperbrowser 0.27.0__py3-none-any.whl → 0.29.0__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 hyperbrowser might be problematic. Click here for more details.

@@ -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
  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
@@ -6,23 +6,23 @@ hyperbrowser/client/managers/async_manager/extension.py,sha256=a-xYtXXdCspukYtsg
6
6
  hyperbrowser/client/managers/async_manager/extract.py,sha256=9p8dGLYmoow7smnQ0BTRN6diDmIayjW-EPRGzzvheZk,2102
7
7
  hyperbrowser/client/managers/async_manager/profile.py,sha256=f2uX2GGYdgL0fyzB0jnI-L-nWleqG6cwZ0pc1K1zdQY,1244
8
8
  hyperbrowser/client/managers/async_manager/scrape.py,sha256=Lr6oicTX3U1xooczUVQlsq2mzIhAKEW-A9909ZdSzKc,5720
9
- hyperbrowser/client/managers/async_manager/session.py,sha256=ObJhz1IkCCIQLwmztQ-M7lCKzKsVDr-eWCFnan2d9rQ,1692
9
+ hyperbrowser/client/managers/async_manager/session.py,sha256=KN28FEwGdJ1GC0aq_4JFDsVQrWs7CigBAwgQE5BtaEE,2005
10
10
  hyperbrowser/client/managers/sync_manager/crawl.py,sha256=uAVmjhUbamVnzAAyfswq1bdBR5c7JrfGVvPdVmmw4R8,3799
11
11
  hyperbrowser/client/managers/sync_manager/extension.py,sha256=1YoyTZtMo43trl9jAsXv95aor0nBHiJEmLva39jFW-k,1415
12
12
  hyperbrowser/client/managers/sync_manager/extract.py,sha256=XocMKC0qAarRpE12KU4m_mi1KhUOHp3-TK4dLeiIn6E,2034
13
13
  hyperbrowser/client/managers/sync_manager/profile.py,sha256=va6mlhQ5SKZa-viEGFNzV6UBZEP5SqwVp32_oxC_NzM,1196
14
14
  hyperbrowser/client/managers/sync_manager/scrape.py,sha256=y4YB-NusXRi3brE7jBGRBHGANY-_-aHMBirKuuU6mdg,5579
15
- hyperbrowser/client/managers/sync_manager/session.py,sha256=74cekrDaGKW5WlP_0Qrqlk-xW2p1u4s63E-D08a4A2s,1610
15
+ hyperbrowser/client/managers/sync_manager/session.py,sha256=x2yHIkamcIHbmzMLQtJHzY93UgAlhZ02gHMMmJqiHpc,1911
16
16
  hyperbrowser/client/sync.py,sha256=HgglJY9pNdW987OzNO_5dSZgj1AfAqovCmY99WYQD2E,1213
17
17
  hyperbrowser/config.py,sha256=2J6GYNR_83vzJZ6jEV-LXO1U-q6DHIrfyAU0WrUPhw8,625
18
18
  hyperbrowser/exceptions.py,sha256=SUUkptK2OL36xDORYmSicaTYR7pMbxeWAjAgz35xnM8,1171
19
- hyperbrowser/models/consts.py,sha256=SgXPzWHNiQj02d6AehQbzty4qaE2tZ8KxQrdsGBsN1c,5203
19
+ hyperbrowser/models/consts.py,sha256=sFdJ4fDIL5By7wSzh6As-jc3L3-Ul3XqZvvfS8D3J6U,6223
20
20
  hyperbrowser/models/crawl.py,sha256=22hP_DPZMfa2MAfOeJ90qj5CH4rr7VtQT1gCQqO8jO8,2610
21
21
  hyperbrowser/models/extension.py,sha256=nXjKXKt9R7RxyZ4hd3EvfqZsEGy_ufh1r5j2mqCLykQ,804
22
- hyperbrowser/models/extract.py,sha256=24rNo0BzczRPTb3JOcz_WHo5Lz3rBc1Z3-l4EhhroI0,1447
22
+ hyperbrowser/models/extract.py,sha256=Thq1wQhXlS-dh4442JLDONGOYix06s3gjWSnP1OuyN4,1528
23
23
  hyperbrowser/models/profile.py,sha256=KRb_LNxxW00AsD_thzzthFS51vInJawt1RcoNz4Q9i8,1322
24
24
  hyperbrowser/models/scrape.py,sha256=ZdVNN4rh7EKLh-O1Ou5aU_OgTNxC9pFQlkG-Q2fR-Z4,4611
25
- hyperbrowser/models/session.py,sha256=bQlKTv8i4yS9mzOFmhbRwaF7FrjkDKZQ6b1IEtGBOFU,5556
25
+ hyperbrowser/models/session.py,sha256=IkkhwiTwH43IvrAa5Zqs3hVpF7pPz0ly3mN8P-4ZN3Y,6047
26
26
  hyperbrowser/tools/__init__.py,sha256=OUaTUM-kiigYmzfbpx3XQhzMK1xT1wd8cqXgR4znsAY,2021
27
27
  hyperbrowser/tools/anthropic.py,sha256=5pEkJm1H-26GToTwXsDjo4GGqVy1hATws4Pg59mumow,1667
28
28
  hyperbrowser/tools/openai.py,sha256=4-71IIWSxc_ByhywcfWj9-QI9iYNEe0xO6B2spE8WG0,2200
@@ -30,7 +30,7 @@ hyperbrowser/tools/schema.py,sha256=cR2MUX8TvUyN8TnCyeX0pccp4AmPjrdaKzuAXRThOJo,
30
30
  hyperbrowser/transport/async_transport.py,sha256=MIPJvilvZWBPXLZ96c9OohuN6TN9DaaU0EnyleG3q6g,4017
31
31
  hyperbrowser/transport/base.py,sha256=ildpMrDiM8nvrSGrH2LTOafmB17T7PQB_NQ1ODA378U,1703
32
32
  hyperbrowser/transport/sync.py,sha256=ER844H_OCPCrnmbc58cuqphWTVvCZJQn7-D7ZenCr3Y,3311
33
- hyperbrowser-0.27.0.dist-info/LICENSE,sha256=6rUGKlyKb_1ZAH7h7YITYAAUNFN3MNGGKCyfrw49NLE,1071
34
- hyperbrowser-0.27.0.dist-info/METADATA,sha256=tdJfV5EXUY5CEY_KLKLSYs9x6ZLrpeiAsDU6bxnJxbk,3438
35
- hyperbrowser-0.27.0.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
36
- hyperbrowser-0.27.0.dist-info/RECORD,,
33
+ hyperbrowser-0.29.0.dist-info/LICENSE,sha256=6rUGKlyKb_1ZAH7h7YITYAAUNFN3MNGGKCyfrw49NLE,1071
34
+ hyperbrowser-0.29.0.dist-info/METADATA,sha256=8UmTW7HXMy4-Z3j-tyPAkQLTSttXYwoaZjtix9ise5U,3438
35
+ hyperbrowser-0.29.0.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
36
+ hyperbrowser-0.29.0.dist-info/RECORD,,