64149
firefoxでブックマークフォルダーにいっぱいのブックマークが登録されています。

ブックマークフォルダーをfirefoxへドラックアンドドロップすると

> ○○個のタブを開こうとしています。この操作を行うと、ページの読み込み中は Firefox が遅くなる可能性があります。続行しますか？

とメッセージがあらわれます。

僕はひとつひとつをタブで開くのではなく、ブックマークフォルダーのサイトを順番（１つのタブで次のブックマーク、前のブックマークを見るという感じ）に開いて、ショートカットキーのようなもので簡単に前後のブックマークに移動したいのですが、このために使える機能や拡張機能はありますか？

ブラウザ、OSのバージョンはこうなっています

  * windows10
  * firefox74.0
CC BY-SA 4.0
2020-03-26T01:10:54.537
64119
2020-03-27T05:05:15.923
2020-03-27T01:53:07.260
37046
37046
question
firefox
firefoxでブックマークを順番に開くには？
[Shortkeys](https://addons.mozilla.org/ja/firefox/addon/shortkeys/)
という拡張機能で、任意のブックマークページにショートカットを割り当てて開く方法が紹介されています。

参考:  
[キーボードショートカット一発でブックマーク開く@Firefox
#大晦日ハッカソン](https://hiroga.hatenablog.com/entry/2017/12/31/121536)

また、別解にはなりますが、開いた複数のタブをショートカットで切り替えることは可能です。

[Firefox のキーボードショートカット #ウィンドウとタブ](https://support.mozilla.org/ja/kb/keyboard-
shortcuts-perform-firefox-tasks-quickly#w_twindowaealci)

> タブを一つ左へ移動: `Ctrl` \+ `Page Up`  
>  タブを一つ右へ移動: `Ctrl` \+ `Page Down`
CC BY-SA 4.0
2020-03-27T02:44:47.393
64145
2020-03-27T02:44:47.393
3060
64119
answer
FireFox自身や拡張機能で何とかするのではなく、PythonとかC#でSelenium,WebDriverを使って外から動かすのもアリではないでしょうか？  
ブックマークしたWebサイトを巡回して確認したいような感じなので。

  * PythonとかC#で自作アプリを作り、Selenium,WebDriverを使ってFireFoxを立ち上げる
  * ブックマークは事前に情報取得して自作アプリで使いやすい形式に格納しておく  
アプリの1機能としてFireFoxのブックマークと同期させる手段を用意しておくのも良い

  * グローバルなホットキーを登録して「次」「前」「アプリ表示切替」の3つくらいを用意する
  * 通常は最小化しておくか、元からタスクバーに表示されないように作成する

* * *

例えば下記紹介記事のPythonなんかで、簡単で基本的な動作検証が考えられます。

以下のようなブックマークから抽出したサイトのリスト(`bmlist.txt`)を作っておき。

```

    https://www.amazon.co.jp/
    http://www.gakufu.ne.jp/GakufuNet/
    https://www.kinokuniya.co.jp/
    https://honto.jp/
    https://www.yaesu-book.co.jp/
    
```

こんなプログラムでコマンドプロンプトから実行します。  
該当ページを表示するFireFoxが立ち上がるので、その内容を確認します。  
実行しているコマンドプロンプトにフォーカスを当ててEnterを押下すれば次のサイトに移動します。

```

    from selenium import webdriver
    driver = webdriver.Firefox(executable_path='geckodriver')
    
    with open('bmlist.txt') as f:  # ブックマークリストの読み込み
        bmlist = f.read().splitlines()
    
    for s in bmlist:  # ブラウザで1サイトづつ表示。Enterキーで次へ移動
        driver.get(s)
        ky = input('GoTo Next Site.')
    
```

ホットキー登録・ブックマーク同期とか、WebDriver起動時のオプション・環境設定などの機能を追加していけば、そんなに難しくはなく希望の物が出来るのではないでしょうか？

以下は参考記事

* * *

Selenium,WebDriverでブラウザ操作：

[【Python】Seleniumの使い方（ブラウザ自動操作）](https://algorithm.joho.info/programming/python/selenium-
py/)

[C#でSelenium2を使用して主要ブラウザを動かしてみた](https://qiita.com/whoshino/items/603d92f0560276558188)

* * *

ブックマーク処理：

[Get bookmarks from your Firefox browser database.](https://python-
catalin.blogspot.com/2019/03/get-bookmarks-from-your-firefox-browser.html)  
[jayrambhia/Bookmark-Manager](https://github.com/jayrambhia/Bookmark-Manager)

[Dissimilis/BookmarksManager](https://github.com/Dissimilis/BookmarksManager)

* * *

ホットキー登録：

[Python Tkinter hide and show window via
hotkeys](https://stackoverflow.com/q/50570446/9014308)  
[PyQt5:ウィンドウを表示してなくてもキーに反応させる](https://qiita.com/v2okimochi/items/5d1de4cb3f70c6c25310)  
[wxPythonでホットキーを使う](https://python-
minutes.blogspot.com/2017/06/wxpython_28.html)

[Global Shortcuts in WinForms and
WPF](https://www.codeproject.com/Articles/442285/Global-Shortcuts-in-WinForms-
and-WPF)  
[Global hotkeys in windowless .NET
app](https://stackoverflow.com/q/17133656/9014308)
CC BY-SA 4.0
2020-03-27T05:05:15.923
64149
2020-03-27T05:05:15.923
26370
64119
answer