mirror of
https://github.com/jackwener/OpenCLI.git
synced 2026-09-14 18:25:42 +08:00
4e3259976b
* feat(google): add search, suggest, news, and trends adapters Four new commands under `google`: - search: browser-based DOM extraction from google.com/search - suggest: public JSON API (suggestqueries.google.com) - news: public RSS feed (top stories + keyword search) - trends: public RSS feed (daily trending searches by region) Shared RSS parser in utils.ts with attribute/CDATA support. Unit tests for parseRssItems, E2E tests with network skip guards. * refactor(google): downgrade search strategy from COOKIE to PUBLIC Google search results are public data, no login needed. Browser is required for DOM rendering, not authentication. Standalone mode confirmed working in testing. * fix: update test comment to reflect PUBLIC strategy
2.2 KiB
2.2 KiB
Mode: 🌐 / 🔐 Mixed · Domains: google.com, suggestqueries.google.com, news.google.com, trends.google.com
Commands
| Command | Description |
|---|---|
opencli google search <keyword> |
Search Google and extract results from the page |
opencli google suggest <keyword> |
Get Google search suggestions |
opencli google news [keyword] |
Get Google News headlines (top stories or search) |
opencli google trends |
Get Google Trends daily trending searches |
What works today
- Public API commands work without a browser:
suggest— JSON API, no auth needednews— RSS feed, supports top stories and keyword searchtrends— RSS feed, supports different regions
google searchuses browser mode to extract results from google.com.
Current limitations
google searchmay trigger CAPTCHA in Standalone browser mode. Extension mode (with an established Chrome session) is more reliable.- Google frequently changes its DOM structure. If
searchstops returning results, selectors may need updating. - Snippet extraction may return empty for some results depending on Google's layout.
Usage Examples
# Search Google
opencli google search "typescript tutorial" --limit 10
# Get search suggestions
opencli google suggest python
# Get top news headlines
opencli google news --limit 5
# Search news for a topic
opencli google news "artificial intelligence" --limit 10 --lang en --region US
# Get trending searches in Japan
opencli google trends --region JP --limit 10
# Output as JSON
opencli google search "machine learning" -f json
Prerequisites
suggest,news,trendsdo not require Chrome.searchrequires:- Chrome running (or Standalone mode will auto-launch)
- For best results, use the Browser Bridge extension with an established Google session
Notes
suggestdefaults to--lang zh-CN; other commands default to--lang en.newssupports--langand--regionparameters for localized results.trendstraffic values are raw strings (e.g. "500K+", "1,000,000+"), not numeric.searchoutput includes three result types:result(standard),snippet(featured answer box), andpaa(People Also Ask).