GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

jarun

googler – 👀 Google検索、Googleサイト検索、端末からのGoogleニュース

投稿日:

👀 Google検索、Googleサイト検索、端末からのGoogleニュース

googlerは、コマンドラインからGoogle(Web&News)とGoogle Site Searchのパワーツールです。 各結果のタイトル、URL、要約を表示し、端末からブラウザで直接開くことができます。 結果はページ単位で取得されます(ページナビゲーションあり)。 単一のgooglerインスタンスで順次検索をサポートします。

googlerは当初、Xのないヘッドレスサーバーに対応するように書かれていました。テキストベースのブラウザと統合することができます。 しかし、それはずっと多くを提供する非常に便利で柔軟なユーティリティに成長しました。 たとえば、任意の数の結果を取り出したり、どこからでも検索を制限したり、検索を任意の期間に制限したり、任意の数のウェブサイトを検索するエイリアスを定義したり、ドメインを簡単に切り替えることができます。 シェル補完スクリプトを使用すると、オプションを覚えておく必要はありません。

Google googlerはGoogleとは何ら関係していません。

プライバシーを意識したDuckDuckGoの同様のユーティリティーをお探しですか? ddgrチェックしてddgr

スマートで効率的なターミナルユーティリティを愛する? 私のリポジトリを探検してください。 彼らがあなたを助けるなら、私にコーヒーを買う。

目次

特徴

  • Google検索、Googleサイト検索、Googleニュース
  • すばやくクリーンな広告(広告や迷子のURLや混乱)、カスタムカラー
  • omn​​ipromptの結果ページをナビゲートし、ブラウザでURLを開きます
  • googler @tアドオンを使用した簡単なキーワードベースのサイト検索
  • Bash、Zsh、Fish用の検索とオプション補完スクリプト
  • n個の結果を取り込み、n 番目の結果から開始する
  • 自動スペル修正を無効にし、正確なキーワードを検索する
  • 期間、国/ドメイン(デフォルト:worldwide / .com)、言語
  • Googleのキーワード(例: filetype:mimesite:somesite.com )のサポート
  • ブラウザで直接最初の結果を開きます( I’m Feeling Luckyのように
  • ノンストップ検索:omnipromptで新しい検索を終了せずに
  • HTTPSプロキシ、ユーザエージェント、TLS 1.2(デフォルト)サポート
  • 包括的なマニュアル、便利な使用例のマニュアルページ
  • 最小限の依存関係

インストール

依存関係

googlerはPython 3.4以降が必要です。 各マイナーバージョンの最新のパッチリリースのみがサポートされています。

omn​​ipromptでURLをクリップボードにコピーするために、 googlerはLinuxではpbcopy 、OS Xではpbcopy (デフォルトではインストール済み)、Windowsではclip (デフォルトではインストール済み)を使用します。

パッケージマネージャーから

  • AURpacman -S googler
  • Debianapt-get install googler
  • Fedoradnf install googler
  • FreeBSDpkg install googler
  • brew install googlerbrew install googler
  • NixOSnix-env -i googler
  • openSUSE
  • Slackwareslackpkg install googler
  • Ubuntuapt-get install googler
  • Ubuntu PPAapt-get install googler
  • Void Linuxxbps-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 @tgoogler @tためにWikipediaを検索する方法は次のhexspeakです。

$ @w hexspeak

ああそう! 他のgooglerオプションも組み合わせることができます。 生活を楽にするために、起動時にファイルをソースにするようにシェルを構成することもできます。

すべてのエイリアスは@記号(したがってgoogler @tという名前)でgoogler @t 、シェルコマンドと衝突する可能性は最小限に抑えられます。 ファイルに独自のエイリアスを追加して、興味のあるエイリアスを返信してください。

テキストベースのブラウザ統合

googler環境変数が設定されている場合、 BROWSERはいくつかのテキストベースのブラウザでそのままBROWSERます。 例えば、

$ export BROWSER=w3m

または1回限りの使用のために、

$ BROWSER=w3m googler query

特定のグラフィカルブラウザがメッセージをコンソールに表示するため、 BROWSERが既知のテキストベースのブラウザ(現在はelinkslinkslynxw3mまたは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設定します。

  1. Google hello world

    $ googler hello world
    
  2. サイト imdb.comのキーワードjungle bookの 3 番目の結果から、過去14ヶ月以内に更新された15件の結果

    $ googler -n 15 -s 3 -t m14 -w imdb.com jungle book
    
  3. ガジェットに関する最近のニュースを読む:

    $ googler -N gadgets
    
  4. Google IndiaサーバーのIPLクリケットの結果を英語で取得:

    $ googler -c in -l en IPL cricket
    
  5. 引用されたテキストを検索する:

    $ googler it\'s a \"beautiful world\" in spring
    
  6. 特定のファイルタイプを検索する:

    $ googler instrumental filetype:mp3
    
  7. google代わりにgoogler結果を取得するなど、 自動スペルの修正を無効にする:

    $ googler -x googler
    
  8. 私はラッキーな検索を感じています:

    $ googler -j leather jackets
    
  9. ウェブサイト固有の検索:

    $ googler -w amazon.com -w ebay.com digital camera
    

    サイト固有の検索はオムニプロンプトで続きます。

  10. 単語の定義を見つける別名:

    alias define='googler -n 2 define'
    
  11. omn​​ipromptは、これらのキーまたはインデックス文字列をコマンドとして認識するので、それらの前にgを付ける必要があります。たとえば、

    g n
    g g keywords
    g 1
    
  12. 入力と出力のリダイレクト

    $ googler -C hello world < input > output
    

    制御文字(カラー出力用)の印刷を避けるには、 -Cが必要であることに注意してください。

  13. パイプ出力:

    $ googler -C hello world | tee output
    
  14. Solarized Dark( スクリーンショット )用に設計された暖かい配色などのカスタム配色を使用します

    $ googler --colors bjdxxy google
    $ GOOGLER_COLORS=bjdxxy googler google
    
  15. HTTPSプロキシを通るトンネルトラフィック、例えばポート8118でリッスンするローカルPrivoxyインスタンス:

    $ googler --proxy localhost:8118 google
    

    デフォルトでは、環境変数https_proxyが定義されていれば使用されます。

  16. 複数の検索キーワードを引用して自動補完する(補完スクリプトを使用):

    $ googler 'hello w<TAB>
    
  17. その他のヘルプ

    $ googler -h
    $ man googler
    

トラブルシューティング

  1. たとえば、単一の結果( -n 1 )を取得した場合、結果が表示されない場合があります。 その理由は、グーグルがあなたの地理的なデータに応じていくつかのGoogleサービス(Youtubeなど)の結果、地図の場所などをgooglerいるためです。 場合によっては、検索でGoogle(ウェブサービス)が正確に10件の結果(デフォルト)を表示しない場合があります。 これらの結果を可能な限り省略することにしました。 これは修正することができますが、より多くの処理(およびより多くの時間)が必要になります。 前方にナビゲートして、次の結果セットを取得することができます。

  2. デフォルトでgooglerはいくつかのTCP最適化を適用し、TLS 1.2を強制します(Python 3.4以降)。 接続上の問題がある場合は、– --notweakスイッチを使用して両方を無効にしてみてください。

  3. 言語がdk (デンマーク)、 fi (フィンランド)または(アイスランド)の場合、Googleニュースサービスはご利用いただけません。 -l en使用します。 詳細は#187を参照してください。

  4. 一部のユーザーは、OS X上のiTerm2で色付きのオムニープロプト(問題#203を参照)の問題を報告しています。

    export DISABLE_PROMPT_COLOR=1
    

ノート

  1. 最初はプルリクエストを出しましたが、最後の変更が7年前に行われたことがわかりました。 さらに、元の著者Henri Hakkinenの GitHub活動は過去1年間ではありません。 私は、このgooglerという名前のプロジェクトの独立したレポを作成しました。 私は元の著作権情報を保持していました。

  2. Googleは結果をJSON形式で返す検索APIを提供しています。 しかし、 公式のドキュメントからの私の理解によると、APIはカスタム検索エンジンの既存のインスタンスに対してクエリを発行し、無料で1日あたり100の検索クエリによって制限されます。 また、計画を変更したり、APIを他の方法で制限したりする場合は、支払いを予約しています。 だから私はGoogleの計画とポリシーとの連携や、追跡可能なパーソナルカスタム検索APIキーと識別子を公開することを控えました。 私はhtmlを取り出すことによってそれを行うブラウザの方法を保持しました。これはオープンで自由な仕様です。

  3. googlerのためのrofiスクリプトをここで見つけることができます。 匿名ユーザーによって作成され、未テストであり、私たちはそれを維持しません。

貢献

プルのリクエストは大歓迎です。 TODOのリストについては#209をご覧ください。

開発者

  1. 著作権©2008 Henri Hakkinen
  2. Copyright©2015-2018 Arun Prakash Jana
  3. 王ジミン
  4. ジョナサン・ジェンキンス
  5. SZ Lin

jeremijaNarratに感謝します。

ロゴ

ロゴの著作権©2017 Zhiming Wang。

コードと一緒に自由に再配布したり、このプロジェクトの記述やリンクに使用することができます。 変更したバージョンを作成したり、プロジェクトのロゴやアイコン(上流フォークを目的とした個人用のフォークやフォークを除く)を作成したり、書面による許可なく使用することはできません。







-jarun
-, , , , , ,

執筆者: