Github: https://github.com/jarun/googler
googler
は、コマンドラインからGoogle(Web&News)とGoogle Site Searchのパワーツールです。 各結果のタイトル、URL、要約を表示し、端末からブラウザで直接開くことができます。 結果はページ単位で取得されます(ページナビゲーションあり)。 単一のgoogler
インスタンスで順次検索をサポートします。
googler
は当初、Xのないヘッドレスサーバーに対応するように書かれていました。テキストベースのブラウザと統合することができます。 しかし、それはずっと多くを提供する非常に便利で柔軟なユーティリティに成長しました。 たとえば、任意の数の結果を取り出したり、どこからでも検索を制限したり、検索を任意の期間に制限したり、任意の数のウェブサイトを検索するエイリアスを定義したり、ドメインを簡単に切り替えることができます。 シェル補完スクリプトを使用すると、オプションを覚えておく必要はありません。
Google googler
はGoogleとは何ら関係していません。
プライバシーを意識したDuckDuckGoの同様のユーティリティーをお探しですか? ddgr
チェックしてddgr
!
スマートで効率的なターミナルユーティリティを愛する? 私のリポジトリを探検してください。 彼らがあなたを助けるなら、私にコーヒーを買う。
目次
特徴
- Google検索、Googleサイト検索、Googleニュース
- すばやくクリーンな広告(広告や迷子のURLや混乱)、カスタムカラー
- omnipromptの結果ページをナビゲートし、ブラウザでURLを開きます
- googler @tアドオンを使用した簡単なキーワードベースのサイト検索
- Bash、Zsh、Fish用の検索とオプション補完スクリプト
- n個の結果を取り込み、n 番目の結果から開始する
- 自動スペル修正を無効にし、正確なキーワードを検索する
- 期間、国/ドメイン(デフォルト:worldwide / .com)、言語
- Googleのキーワード(例:
filetype:mime
、site:somesite.com
)のサポート - ブラウザで直接最初の結果を開きます( I’m Feeling Luckyのように )
- ノンストップ検索:omnipromptで新しい検索を終了せずに
- HTTPSプロキシ、ユーザエージェント、TLS 1.2(デフォルト)サポート
- 包括的なマニュアル、便利な使用例のマニュアルページ
- 最小限の依存関係
インストール
依存関係
googler
はPython 3.4以降が必要です。 各マイナーバージョンの最新のパッチリリースのみがサポートされています。
omnipromptでURLをクリップボードにコピーするために、 googler
はLinuxではpbcopy
、OS Xではpbcopy
(デフォルトではインストール済み)、Windowsではclip
(デフォルトではインストール済み)を使用します。
パッケージマネージャーから
- AUR (
pacman -S googler
) - Debian (
apt-get install googler
) - Fedora (
dnf install googler
) - FreeBSD (
pkg install googler
) -
brew install googler
(brew install googler
) - NixOS (
nix-env -i googler
) - openSUSE
- Slackware (
slackpkg install googler
) - Ubuntu (
apt-get install googler
) - Ubuntu PPA (
apt-get install googler
) - Void Linux (
xbps-install -S googler
)
パッケージャのヒント
googler
v2.7以降では、無効にしたいインプレースの自己アップグレードメカニズムが付属しています。 これを行うには、
$ make disable-self-upgrade
インストールの前に
リリースパッケージ
Arch Linux、CentOS、Debian、Fedora、openSUSE Leap、Ubuntuのパッケージは、 最新の安定版リリースで利用できます。
ソースから
gitをインストールしている場合は、このリポジトリをクローンします。 それ以外の場合は、 最新の安定版または開発版をダウンロードしてください。
デフォルトの場所( /usr/local
)にインストールするには:
$ sudo make install
googler
と関連するドキュメントを削除するには、
$ sudo make uninstall
PREFIX
は、別の場所にインストールする場合に備えてサポートされています。
スタンドアロンで実行する
googler
はスタンドアロンの実行可能ファイルです。 含まれているディレクトリから:
$ ./googler
1つのファイルをダウンロードする
googler
は1つのスタンドアロンスクリプトなので、必要に応じて1つのファイルをダウンロードできます。
最新の安定版をインストールするには、
$ sudo curl -o /usr/local/bin/googler https://raw.githubusercontent.com/jarun/googler/v3.5/googler && sudo chmod +x /usr/local/bin/googler
あなたはグーグルがそれをアップグレードすることで
$ sudo googler -u
同様に、git master( 危険な )からインストールする場合は、
$ sudo curl -o /usr/local/bin/googler https://raw.githubusercontent.com/jarun/googler/master/googler && sudo chmod +x /usr/local/bin/googler
実行してアップグレードする
$ sudo googler -u --include-git
シェルの完成
Bash、Fish、Zshの検索キーワードとオプション補完スクリプトは、 auto-completion/
それぞれのサブディレクトリにあります。 インストール手順については、シェルのマニュアルを参照してください。
使用法
コマンドラインオプション
usage: googler [-h] [-s N] [-n N] [-N] [-c TLD] [-l LANG] [-x] [-C]
[--colors COLORS] [-j] [-t dN] [-w SITE] [--unfilter]
[-p PROXY] [--noua] [--notweak] [--json] [--url-handler UTIL]
[--show-browser-logs] [--np] [-u] [--include-git] [-v] [-d]
[KEYWORD [KEYWORD ...]]
Google from the command-line.
positional arguments:
KEYWORD search keywords
optional arguments:
-h, --help show this help message and exit
-s N, --start N start at the Nth result
-n N, --count N show N results (default 10)
-N, --news show results from news section
-c TLD, --tld TLD country-specific search with top-level domain .TLD,
e.g., 'in' for India
-l LANG, --lang LANG display in language LANG
-x, --exact disable automatic spelling correction
-C, --nocolor disable color output
--colors COLORS set output colors (see man page for details)
-j, --first, --lucky open the first result in web browser and exit
-t dN, --time dN time limit search [h5 (5 hrs), d5 (5 days), w5 (5
weeks), m5 (5 months), y5 (5 years)]
-w SITE, --site SITE search a site using Google
--unfilter do not omit similar results
-p PROXY, --proxy PROXY
tunnel traffic through an HTTP proxy; PROXY is of the
form [http://][user:password@]proxyhost[:port]
--noua disable user agent
--notweak disable TCP optimizations and forced TLS 1.2
--json output in JSON format; implies --noprompt
--url-handler UTIL custom script or cli utility to open results
--show-browser-logs do not suppress browser output (stdout and stderr)
--np, --noprompt search and exit, do not prompt
-u, --upgrade perform in-place self-upgrade
--include-git when used with --upgrade, upgrade to latest git master
-v, --version show program's version number and exit
-d, --debug enable debugging
omniprompt keys:
n, p fetch the next or previous set of search results
index open the result corresponding to index in browser
f jump to the first page
o [index|range|a ...] open space-separated result indices, numeric ranges
(sitelinks unsupported in ranges), or all, in browser
open the current search in browser, if no arguments
O [index|range|a ...] like key 'o', but try to open in a GUI browser
g keywords new Google search for 'keywords' with original options
should be used to search omniprompt keys and indices
c index copy url to clipboard
u toggle url expansion
q, ^D, double Enter exit googler
? show omniprompt help
* other inputs issue a new search with original options
設定ファイル
googler
は何もありません! これは、ユーティリティの速度を保持し、OS固有の違いを避けるためです。 エイリアスを使用して設定ファイルの利点を楽しむことができます(ただし、色のスキームは環境変数を使って追加カスタマイズできます; 色を参照してください)。 オプションを覚える必要はありません。
たとえば、bash / zsh / ksh / etcの次のような別名があります。
alias g='googler -n 7 -c ru -l ru'
Googleロシアのサーバーから7つの結果を取得し、ロシア語の結果に優先します。
このエイリアスは、設定ファイルを使用する目的と、
- 永続的な設定:ユーザーが
g
起動すると、優先設定に展開されます。 - オーバーライドの設定:Pythonの
argparse
仕組みのおかげで、googler
は、エイリアスの設定がcliから渡されたオプションによって完全にオーバーライドされるように書かれています。 したがって、同じユーザーがg -l de -c de -n 12 hello world
実行すると、結果はドイツ語の結果に優先してGoogle Germanyサーバーから返されます。
googler @t
googler @t
はGoogleサイト検索の便利なアドオンです。 googler
はサイトの検索オプションが組み込まれていますが、エイリアスを使用してサイトをさらに単純化しました。 googler_atファイルには、ウェブサイトの検索エイリアスのリストが含まれています。 ソースを入手するには、以下を実行します。
$ source googler_at
または、
$ . googler_at
googler @t
、 googler @t
ためにWikipediaを検索する方法は次のhexspeak
です。
$ @w hexspeak
ああそう! 他のgoogler
オプションも組み合わせることができます。 生活を楽にするために、起動時にファイルをソースにするようにシェルを構成することもできます。
すべてのエイリアスは@
記号(したがってgoogler @t
という名前)でgoogler @t
、シェルコマンドと衝突する可能性は最小限に抑えられます。 ファイルに独自のエイリアスを追加して、興味のあるエイリアスを返信してください。
テキストベースのブラウザ統合
googler
環境変数が設定されている場合、 BROWSER
はいくつかのテキストベースのブラウザでそのままBROWSER
ます。 例えば、
$ export BROWSER=w3m
または1回限りの使用のために、
$ BROWSER=w3m googler query
特定のグラフィカルブラウザがメッセージをコンソールに表示するため、 BROWSER
が既知のテキストベースのブラウザ(現在はelinks
、 links
、 lynx
、 w3m
またはwww-browser
)に設定されていない限り、 BROWSER
はデフォルトでブラウザの出力を抑制します。 別のテキストベースのブラウザを使用する場合は、 – --show-browser-logs
オプションを--show-browser-logs
してブラウザ出力を明示的に有効にする必要があります。 あなたのブラウザが十分に人気があると思われる場合は、問題を提出するか、リクエストを引き取ってください。私たちはそれをホワイトリストに載せることを検討します。 --show-browser-logs
詳細については、manページを参照してください。
BROWSER
設定されたGUIブラウザを使用する必要がある場合は、omnipromptキーO
使用します。 googler
はテキストベースのブラウザを無視してGUIブラウザを起動しようとします。 ブラウザのログは常にO
抑止されます。
端末の読み取りモードまたはリーダーの表示
googler
といくつかの素晴らしいユーティリティを簡単に統合して、気晴らしのない環境で毎日のニュースを楽しむことができます。 wikiでもっと読む。
色
googler
では、BSD LSCOLORS
連想させる6文字の文字列でカラースキームをカスタマイズできます。 6文字は、
- インデックス
- タイトル
- URL
- メタデータ/公開情報(Googleニュースのみ)
- 抄録
- プロンプト
それぞれ、 6文字の文字列は、 – --colors
オプションの引数として、または環境変数GOOGLER_COLORS
値として渡されます。
私たちは以下の色彩/スタイルを提供しています:
文字 | カラー/スタイル |
---|---|
a | 黒 |
b | 赤 |
c | 緑 |
d | 黄 |
e | 青 |
f | マゼンタ |
g | シアン |
h | 白 |
私 | 明るい黒 |
j | 真っ赤 |
k | 明るい緑色 |
l | 明るい黄色 |
m | 明るい青 |
n | 明るいマゼンタ |
o | 明るいシアン |
p | 明るい白色 |
AH | 大文字の小文字の色 |
IP | 大文字の小文字の明るい色 |
バツ | 正常 |
バツ | 大胆な |
y | リバースビデオ |
Y | ボールドリバースビデオ |
デフォルトの色文字列はGKlgxy
です。
- 大胆な明るいシアンの指数
- 大胆な明るい緑色のタイトル
- 明るい黄色のURL
- シアンメタデータ/パブリッシング情報
- 通常の抄録
- ビデオのプロンプトを反転させる
ご了承ください
- 明るい色(
\x1b[90m
–\x1b[97m
\x1b[90m
として実装されている)は、すべてのカラー対応端末エミュレータで利用できない場合があります。 - 一部の端末エミュレータでは、明るい色で太字のテキストを描画します。
- 一部の端末エミュレータでは、デフォルトオフスイッチを使用して太字と明るい色のみを区別します。
端末エミュレータのマニュアルや、ANSIエスケープシーケンスに関するWikipediaの記事を参照してください 。
ドメインのみのURL
展開されたURLではなく検索結果にドメイン名を表示するには、環境変数DISABLE_URL_EXPANSION
設定します。
例
-
Google hello world :
$ googler hello world
-
サイト imdb.comのキーワードjungle bookの 3 番目の結果から、過去14ヶ月以内に更新された15件の結果 :
$ googler -n 15 -s 3 -t m14 -w imdb.com jungle book
-
ガジェットに関する最近のニュースを読む:
$ googler -N gadgets
-
Google IndiaサーバーのIPLクリケットの結果を英語で取得:
$ googler -c in -l en IPL cricket
-
引用されたテキストを検索する:
$ googler it\'s a \"beautiful world\" in spring
-
特定のファイルタイプを検索する:
$ googler instrumental filetype:mp3
-
google
代わりにgoogler
結果を取得するなど、 自動スペルの修正を無効にする:$ googler -x googler
-
私はラッキーな検索を感じています:
$ googler -j leather jackets
-
ウェブサイト固有の検索:
$ googler -w amazon.com -w ebay.com digital camera
サイト固有の検索はオムニプロンプトで続きます。
-
単語の定義を見つける別名:
alias define='googler -n 2 define'
-
omnipromptは、これらのキーまたはインデックス文字列をコマンドとして認識するので、それらの前に
g
を付ける必要があります。たとえば、g n g g keywords g 1
-
入力と出力のリダイレクト :
$ googler -C hello world < input > output
制御文字(カラー出力用)の印刷を避けるには、
-C
が必要であることに注意してください。 -
パイプ出力:
$ googler -C hello world | tee output
-
Solarized Dark( スクリーンショット )用に設計された暖かい配色などのカスタム配色を使用します 。
$ googler --colors bjdxxy google $ GOOGLER_COLORS=bjdxxy googler google
-
HTTPSプロキシを通るトンネルトラフィック、例えばポート8118でリッスンするローカルPrivoxyインスタンス:
$ googler --proxy localhost:8118 google
デフォルトでは、環境変数
https_proxy
が定義されていれば使用されます。 -
複数の検索キーワードを引用して自動補完する(補完スクリプトを使用):
$ googler 'hello w<TAB>
-
その他のヘルプ :
$ googler -h $ man googler
トラブルシューティング
-
たとえば、単一の結果(
-n 1
)を取得した場合、結果が表示されない場合があります。 その理由は、グーグルがあなたの地理的なデータに応じていくつかのGoogleサービス(Youtubeなど)の結果、地図の場所などをgoogler
いるためです。 場合によっては、検索でGoogle(ウェブサービス)が正確に10件の結果(デフォルト)を表示しない場合があります。 これらの結果を可能な限り省略することにしました。 これは修正することができますが、より多くの処理(およびより多くの時間)が必要になります。 前方にナビゲートして、次の結果セットを取得することができます。 -
デフォルトで
googler
はいくつかのTCP最適化を適用し、TLS 1.2を強制します(Python 3.4以降)。 接続上の問題がある場合は、–--notweak
スイッチを使用して両方を無効にしてみてください。 -
言語が
dk
(デンマーク)、fi
(フィンランド)または(アイスランド)の場合、Googleニュースサービスはご利用いただけません。-l en
使用します。 詳細は#187を参照してください。 -
一部のユーザーは、OS X上のiTerm2で色付きのオムニープロプト(問題#203を参照)の問題を報告しています。
export DISABLE_PROMPT_COLOR=1
ノート
-
最初はプルリクエストを出しましたが、最後の変更が7年前に行われたことがわかりました。 さらに、元の著者Henri Hakkinenの GitHub活動は過去1年間ではありません。 私は、この
googler
という名前のプロジェクトの独立したレポを作成しました。 私は元の著作権情報を保持していました。 -
Googleは結果をJSON形式で返す検索APIを提供しています。 しかし、 公式のドキュメントからの私の理解によると、APIはカスタム検索エンジンの既存のインスタンスに対してクエリを発行し、無料で1日あたり100の検索クエリによって制限されます。 また、計画を変更したり、APIを他の方法で制限したりする場合は、支払いを予約しています。 だから私はGoogleの計画とポリシーとの連携や、追跡可能なパーソナルカスタム検索APIキーと識別子を公開することを控えました。 私はhtmlを取り出すことによってそれを行うブラウザの方法を保持しました。これはオープンで自由な仕様です。
-
googlerのためのrofiスクリプトをここで見つけることができます。 匿名ユーザーによって作成され、未テストであり、私たちはそれを維持しません。
貢献
プルのリクエストは大歓迎です。 TODOのリストについては#209をご覧ください。
開発者
- 著作権©2008 Henri Hakkinen
- Copyright©2015-2018 Arun Prakash Jana
- 王ジミン
- ジョナサン・ジェンキンス
- SZ Lin
ロゴ
ロゴの著作権©2017 Zhiming Wang。
コードと一緒に自由に再配布したり、このプロジェクトの記述やリンクに使用することができます。 変更したバージョンを作成したり、プロジェクトのロゴやアイコン(上流フォークを目的とした個人用のフォークやフォークを除く)を作成したり、書面による許可なく使用することはできません。