scrapebadger-cli 0.22.0__tar.gz → 0.22.1__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.
Files changed (59) hide show
  1. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/PKG-INFO +11 -1
  2. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/README.md +10 -0
  3. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/pyproject.toml +1 -1
  4. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/google.py +2 -3
  5. scrapebadger_cli-0.22.1/tests/test_google_light_search.py +18 -0
  6. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/.gitignore +0 -0
  7. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/__init__.py +0 -0
  8. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/client.py +0 -0
  9. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/__init__.py +0 -0
  10. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/airbnb.py +0 -0
  11. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/aliexpress.py +0 -0
  12. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/amazon.py +0 -0
  13. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/apartments.py +0 -0
  14. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/app_store.py +0 -0
  15. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/asos.py +0 -0
  16. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/auth.py +0 -0
  17. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/baidu.py +0 -0
  18. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/bestbuy.py +0 -0
  19. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/bing.py +0 -0
  20. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/booking.py +0 -0
  21. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/chatgpt.py +0 -0
  22. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/depop.py +0 -0
  23. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/duckduckgo.py +0 -0
  24. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/ebay.py +0 -0
  25. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/etsy.py +0 -0
  26. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/facebook.py +0 -0
  27. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/gemini.py +0 -0
  28. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/google_play.py +0 -0
  29. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/gumtree.py +0 -0
  30. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/idealista.py +0 -0
  31. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/immobiliare.py +0 -0
  32. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/instagram.py +0 -0
  33. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/leboncoin.py +0 -0
  34. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/linkedin.py +0 -0
  35. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/loopnet.py +0 -0
  36. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/naver.py +0 -0
  37. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/perplexity.py +0 -0
  38. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/realtor.py +0 -0
  39. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/reddit.py +0 -0
  40. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/redfin.py +0 -0
  41. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/stream.py +0 -0
  42. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/target.py +0 -0
  43. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/tiktok.py +0 -0
  44. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/twitter.py +0 -0
  45. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/vinted.py +0 -0
  46. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/wallapop.py +0 -0
  47. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/walmart.py +0 -0
  48. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/web.py +0 -0
  49. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/yahoo.py +0 -0
  50. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/yandex.py +0 -0
  51. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/youtube.py +0 -0
  52. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/commands/zillow.py +0 -0
  53. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/config.py +0 -0
  54. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/main.py +0 -0
  55. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/src/scrapebadger_cli/output.py +0 -0
  56. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/tests/test_naver.py +0 -0
  57. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/tests/test_tiktok_pagination.py +0 -0
  58. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/tests/test_vinted_image_search.py +0 -0
  59. {scrapebadger_cli-0.22.0 → scrapebadger_cli-0.22.1}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: scrapebadger-cli
3
- Version: 0.22.0
3
+ Version: 0.22.1
4
4
  Summary: ScrapeBadger CLI — Twitter, Vinted, Google, and Web Scraping from the command line
5
5
  Author: ScrapeBadger Team
6
6
  License: MIT
@@ -22,6 +22,16 @@ Description-Content-Type: text/markdown
22
22
 
23
23
  # ScrapeBadger CLI
24
24
 
25
+ Google Light Search uses the dedicated `/v1/google/light/search` endpoint:
26
+
27
+ ```bash
28
+ scrapebadger google light-search "vinted api" --gl us --hl en
29
+ ```
30
+
31
+ Light returns organic results and related searches for 10 credits per successful
32
+ uncached request. Regular `scrapebadger google search` costs 20 credits and
33
+ returns the full SERP. Cache hits and failed requests are free.
34
+
25
35
  Command-line access to ScrapeBadger APIs, including Etsy, AliExpress, Target, ASOS, Best Buy, search engines, social media and general web scraping.
26
36
 
27
37
  ## Install
@@ -1,5 +1,15 @@
1
1
  # ScrapeBadger CLI
2
2
 
3
+ Google Light Search uses the dedicated `/v1/google/light/search` endpoint:
4
+
5
+ ```bash
6
+ scrapebadger google light-search "vinted api" --gl us --hl en
7
+ ```
8
+
9
+ Light returns organic results and related searches for 10 credits per successful
10
+ uncached request. Regular `scrapebadger google search` costs 20 credits and
11
+ returns the full SERP. Cache hits and failed requests are free.
12
+
3
13
  Command-line access to ScrapeBadger APIs, including Etsy, AliExpress, Target, ASOS, Best Buy, search engines, social media and general web scraping.
4
14
 
5
15
  ## Install
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "scrapebadger-cli"
3
- version = "0.22.0"
3
+ version = "0.22.1"
4
4
  description = "ScrapeBadger CLI — Twitter, Vinted, Google, and Web Scraping from the command line"
5
5
  requires-python = ">=3.10"
6
6
  license = {text = "MIT"}
@@ -82,9 +82,9 @@ def light_search(
82
82
  fmt: str = FMT,
83
83
  fields: str | None = FIELDS,
84
84
  ) -> None:
85
- """Google Light Search — organic + related searches only (~40% faster than full SERP)."""
85
+ """Google Light Search — organic + related searches, 10 credits (regular Search: 20)."""
86
86
  data = api_get(
87
- "/v1/google/search",
87
+ "/v1/google/light/search",
88
88
  {
89
89
  "q": q,
90
90
  "gl": gl,
@@ -94,7 +94,6 @@ def light_search(
94
94
  "domain": domain,
95
95
  "location": location,
96
96
  "safe": safe,
97
- "mode": "fast",
98
97
  },
99
98
  )
100
99
  render(data, fmt, fields)
@@ -0,0 +1,18 @@
1
+ from unittest.mock import Mock
2
+
3
+ from scrapebadger_cli.commands import google
4
+ from typer.testing import CliRunner
5
+
6
+
7
+ def test_light_search_uses_dedicated_route(monkeypatch):
8
+ call = Mock(return_value={"organic_results": []})
9
+ monkeypatch.setattr(google, "api_get", call)
10
+ monkeypatch.setattr(google, "render", Mock())
11
+ result = CliRunner().invoke(
12
+ google.app, ["light-search", "vinted api", "--gl", "us", "--start", "10"]
13
+ )
14
+ assert result.exit_code == 0, result.output
15
+ path, params = call.call_args.args
16
+ assert path == "/v1/google/light/search"
17
+ assert params["q"] == "vinted api" and params["start"] == 10
18
+ assert "mode" not in params