blopus 0.3.0__tar.gz → 0.3.2__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 (26) hide show
  1. {blopus-0.3.0 → blopus-0.3.2}/PKG-INFO +5 -5
  2. {blopus-0.3.0 → blopus-0.3.2}/README.md +4 -4
  3. {blopus-0.3.0 → blopus-0.3.2}/blopus/_async.py +3 -3
  4. {blopus-0.3.0 → blopus-0.3.2}/blopus/_version.py +1 -1
  5. {blopus-0.3.0 → blopus-0.3.2}/blopus/cli.py +15 -1
  6. {blopus-0.3.0 → blopus-0.3.2}/blopus/client.py +3 -3
  7. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/PKG-INFO +5 -5
  8. {blopus-0.3.0 → blopus-0.3.2}/pyproject.toml +1 -1
  9. {blopus-0.3.0 → blopus-0.3.2}/LICENSE +0 -0
  10. {blopus-0.3.0 → blopus-0.3.2}/blopus/__init__.py +0 -0
  11. {blopus-0.3.0 → blopus-0.3.2}/blopus/_common.py +0 -0
  12. {blopus-0.3.0 → blopus-0.3.2}/blopus/crewai.py +0 -0
  13. {blopus-0.3.0 → blopus-0.3.2}/blopus/exceptions.py +0 -0
  14. {blopus-0.3.0 → blopus-0.3.2}/blopus/langchain.py +0 -0
  15. {blopus-0.3.0 → blopus-0.3.2}/blopus/llamaindex.py +0 -0
  16. {blopus-0.3.0 → blopus-0.3.2}/blopus/mcp.py +0 -0
  17. {blopus-0.3.0 → blopus-0.3.2}/blopus/models.py +0 -0
  18. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/SOURCES.txt +0 -0
  19. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/dependency_links.txt +0 -0
  20. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/entry_points.txt +0 -0
  21. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/requires.txt +0 -0
  22. {blopus-0.3.0 → blopus-0.3.2}/blopus.egg-info/top_level.txt +0 -0
  23. {blopus-0.3.0 → blopus-0.3.2}/setup.cfg +0 -0
  24. {blopus-0.3.0 → blopus-0.3.2}/tests/test_client.py +0 -0
  25. {blopus-0.3.0 → blopus-0.3.2}/tests/test_common.py +0 -0
  26. {blopus-0.3.0 → blopus-0.3.2}/tests/test_mcp.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blopus
3
- Version: 0.3.0
3
+ Version: 0.3.2
4
4
  Summary: Official Python SDK for the Blopus web search + fetch API.
5
5
  Author: Blopus
6
6
  License: MIT
@@ -60,9 +60,9 @@ pip install "blopus[crewai]" # blopus.crewai.BlopusSearchTool
60
60
 
61
61
  Set `news_only=True` when the question is about **events** — what happened, who
62
62
  announced what, market reaction, election results, earnings news. It searches only
63
- sources with a real newsroom, from a dedicated index, so it is **faster** than an
64
- unscoped search and it drops vendor blogs, marketing pages and documentation that
65
- otherwise crowd news results.
63
+ sources with a real newsroom, over a **dedicated news channel** that is **faster**
64
+ than an unscoped search, and it drops the vendor blogs, marketing pages and
65
+ documentation that otherwise crowd news results.
66
66
 
67
67
  ```python
68
68
  # events → scope it, and pair with a freshness window
@@ -124,7 +124,7 @@ client.search(
124
124
  query,
125
125
  count=10, # 1..50
126
126
  freshness="all", # pd | pw | pm | p3m | p1y | all
127
- news_only=False, # True = newsroom sources only. FASTER (dedicated index) and
127
+ news_only=False, # True = newsroom sources only. Faster dedicated news channel;
128
128
  # drops vendor blogs/docs. Use it for events; leave it off for
129
129
  # documentation, tutorials, forums — or when you want both.
130
130
  include_domains=None, # ["techcrunch.com", ...]
@@ -25,9 +25,9 @@ pip install "blopus[crewai]" # blopus.crewai.BlopusSearchTool
25
25
 
26
26
  Set `news_only=True` when the question is about **events** — what happened, who
27
27
  announced what, market reaction, election results, earnings news. It searches only
28
- sources with a real newsroom, from a dedicated index, so it is **faster** than an
29
- unscoped search and it drops vendor blogs, marketing pages and documentation that
30
- otherwise crowd news results.
28
+ sources with a real newsroom, over a **dedicated news channel** that is **faster**
29
+ than an unscoped search, and it drops the vendor blogs, marketing pages and
30
+ documentation that otherwise crowd news results.
31
31
 
32
32
  ```python
33
33
  # events → scope it, and pair with a freshness window
@@ -89,7 +89,7 @@ client.search(
89
89
  query,
90
90
  count=10, # 1..50
91
91
  freshness="all", # pd | pw | pm | p3m | p1y | all
92
- news_only=False, # True = newsroom sources only. FASTER (dedicated index) and
92
+ news_only=False, # True = newsroom sources only. Faster dedicated news channel;
93
93
  # drops vendor blogs/docs. Use it for events; leave it off for
94
94
  # documentation, tutorials, forums — or when you want both.
95
95
  include_domains=None, # ["techcrunch.com", ...]
@@ -98,9 +98,9 @@ class AsyncBlopus:
98
98
 
99
99
  Set ``news_only=True`` when the question is about events — what happened,
100
100
  who announced what, market reaction, election results, earnings news. It
101
- searches only sources with a newsroom, from a dedicated index, so it is
102
- *faster* than an unscoped search and drops vendor blogs, marketing pages
103
- and documentation that crowd news results.
101
+ searches only sources with a newsroom over a dedicated news channel, so it
102
+ is *faster* than an unscoped search, and drops vendor blogs, marketing
103
+ pages and documentation that crowd news results.
104
104
 
105
105
  Leave it off for documentation, tutorials, forums or reference material,
106
106
  and whenever a question wants both — "what's new in Python 3.14" needs the
@@ -5,4 +5,4 @@ header, so a correct value here is what keeps Cloudflare from 1010-blocking
5
5
  requests as an unidentified library.
6
6
  """
7
7
 
8
- __version__ = "0.3.0"
8
+ __version__ = "0.3.2"
@@ -54,6 +54,7 @@ Common commands:
54
54
  blopus login save your API key (recommended)
55
55
  blopus whoami show which key is active
56
56
  blopus search "who won the game" --freshness pd search the live web
57
+ blopus search "what did the Fed announce" --news-only events only (see search --help)
57
58
  blopus search "openai" --include-domains reuters.com,ft.com
58
59
  blopus search "langchain" --json raw JSON for scripts
59
60
  blopus fetch https://example.com/article read one indexed page
@@ -168,6 +169,7 @@ def _cmd_search(args: argparse.Namespace) -> int:
168
169
  args.query,
169
170
  count=args.count,
170
171
  freshness=args.freshness,
172
+ news_only=args.news_only,
171
173
  include_domains=_csv(args.include_domains),
172
174
  exclude_domains=_csv(args.exclude_domains),
173
175
  language=args.language,
@@ -265,7 +267,12 @@ def build_parser() -> argparse.ArgumentParser:
265
267
  description="Search the live web and print ranked results (or JSON).",
266
268
  epilog=(
267
269
  'Examples:\n'
268
- ' blopus search "spacex" --freshness pd --count 5\n'
270
+ ' # an event -- scope to newsrooms, add a freshness window if breaking\n'
271
+ ' blopus search "what did the Fed announce" --news-only --freshness pd\n'
272
+ ' # documentation -- leave --news-only off\n'
273
+ ' blopus search "kubernetes ingress example"\n'
274
+ ' # wants the announcement AND the changelog -- leave it off\n'
275
+ ' blopus search "what\'s new in Python 3.14"\n'
269
276
  ' blopus search "openai funding" --include-domains reuters.com,ft.com\n'
270
277
  ' blopus search "rust async" --json\n'))
271
278
  s.add_argument("query", help="What to search for.")
@@ -274,6 +281,13 @@ def build_parser() -> argparse.ArgumentParser:
274
281
  s.add_argument("--freshness", default="all",
275
282
  choices=["pd", "pw", "pm", "p3m", "p1y", "all"],
276
283
  help="Recency: pd=day, pw=week, pm=month, p3m=3mo, p1y=year, all (default).")
284
+ s.add_argument("--news-only", action="store_true",
285
+ help="Search ONLY sources with a newsroom (newspapers, wires, "
286
+ "broadcasters, magazines). Use it for events: what happened, who "
287
+ "announced what, market reaction, election results, earnings news. "
288
+ "Leave it off for documentation, tutorials, forums or reference "
289
+ "material, and when a question wants both -- an unscoped search "
290
+ "returns everything, so omitting it is never wrong.")
277
291
  s.add_argument("--include-domains", default=None, metavar="LIST",
278
292
  help="Comma-separated hostnames to allow, e.g. reuters.com,ft.com.")
279
293
  s.add_argument("--exclude-domains", default=None, metavar="LIST",
@@ -110,9 +110,9 @@ class Blopus:
110
110
 
111
111
  Set ``news_only=True`` when the question is about events — what happened,
112
112
  who announced what, market reaction, election results, earnings news. It
113
- searches only sources with a newsroom, from a dedicated index, so it is
114
- *faster* than an unscoped search and drops vendor blogs, marketing pages
115
- and documentation that crowd news results.
113
+ searches only sources with a newsroom over a dedicated news channel, so it
114
+ is *faster* than an unscoped search, and drops vendor blogs, marketing
115
+ pages and documentation that crowd news results.
116
116
 
117
117
  Leave it off for documentation, tutorials, forums or reference material,
118
118
  and whenever a question wants both — "what's new in Python 3.14" needs the
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: blopus
3
- Version: 0.3.0
3
+ Version: 0.3.2
4
4
  Summary: Official Python SDK for the Blopus web search + fetch API.
5
5
  Author: Blopus
6
6
  License: MIT
@@ -60,9 +60,9 @@ pip install "blopus[crewai]" # blopus.crewai.BlopusSearchTool
60
60
 
61
61
  Set `news_only=True` when the question is about **events** — what happened, who
62
62
  announced what, market reaction, election results, earnings news. It searches only
63
- sources with a real newsroom, from a dedicated index, so it is **faster** than an
64
- unscoped search and it drops vendor blogs, marketing pages and documentation that
65
- otherwise crowd news results.
63
+ sources with a real newsroom, over a **dedicated news channel** that is **faster**
64
+ than an unscoped search, and it drops the vendor blogs, marketing pages and
65
+ documentation that otherwise crowd news results.
66
66
 
67
67
  ```python
68
68
  # events → scope it, and pair with a freshness window
@@ -124,7 +124,7 @@ client.search(
124
124
  query,
125
125
  count=10, # 1..50
126
126
  freshness="all", # pd | pw | pm | p3m | p1y | all
127
- news_only=False, # True = newsroom sources only. FASTER (dedicated index) and
127
+ news_only=False, # True = newsroom sources only. Faster dedicated news channel;
128
128
  # drops vendor blogs/docs. Use it for events; leave it off for
129
129
  # documentation, tutorials, forums — or when you want both.
130
130
  include_domains=None, # ["techcrunch.com", ...]
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "blopus"
7
- version = "0.3.0"
7
+ version = "0.3.2"
8
8
  description = "Official Python SDK for the Blopus web search + fetch API."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes