スクショを極めるブログ

たかがスクショ、されどスクショ。スクショを極めることで生産性をぶち上げていきます!

ShareXのアップロード機能:ファイルをアップロードする

ShareXの9記事目
前回はスクショした「画像データ」をアップロードを設定し、画像共有サービスへの連携ができました。今回は、画像ファイルもだけでなくファイル全般を扱えるファイルアップローダーを使ったアップロードをやってみます。

アップロード機能とは

アップロードの基本の話は、こちらも合わせて
screencapture.fun

アップロードは大きくわけて、3つくらいに大別できます

  • 画像専用のサービス
  • テキスト情報(文字情報)専用のサービス
  • ファイルであれば何でもOKなサービス

このうち、今回は一番下のファイル全般のアップローダーを試します。

アップロード可能なデータ

画像アップローダは画像形式のみ対象でしたが、ファイルアップローダーにはどんなファイルでもアップロードすることができます。PDFでもExcelでもアップロード対象になります。ただし、利用者側はファイルを選択するだけで、ShareXの中でファイルタイプを判断され、どのアップローダーを使うかを判断されます。*1

ファイルタイプが画像のとき

画像ファイルは画像アップローダーでアップロードされます。前回の記事通りの動きです。

ファイルタイプがテキストのとき

ファイルがテキストファイルと判断されると、テキストアップローダーの設定でアップロードされます。

それ以外のファイルのとき

ファイルアップローダーでアップロードされます。画像でもテキストでもないと判断されるファイルです、PDFとかXLSXファイルとかZIPファイルとかですね。

アップロード先の設定方法

設定画面は、メインウィンドウか右クリックメニューの「アップロード先」>「アップロード先の設定」から設定ウィンドウを開きます。 アップロード先はたくさん用意されていますが、比較的簡単で使い道のありそうなGoogle DriveとFTPの2つを例にしています。

GoogleDriveの設定方法

Google DriveはGogle Photoと流れは同じです。

(1)のボタンを押すとブラウザが開き、Google Driveの許可画面が出ます。ShareXと連携するGoogleアカウントを選択します。
連携の許可画面がでます。許可ボタンを押します。
最後に画面に認証コードが表示されるので、コピーします。

認証コードをShareXのテキストボックス(2)にコピペして、「承認を完了します」をボタンを押せば完了です。

この設定をすると、Googleからログインアラートが来ることがあります。

FTPサーバーの設定

FTPサーバーの画面は、こんな感じです。普通のFTPクライアントみたいな設定内容です。


FTPの設定画面

FTPだけでなく、SFTP、SCPにも対応しているアップローダーです。 FTPサーバー、ID、パスワードなどFTPクライアントではおなじみの設定をするだけです。

一番下に「接続テスト」のボタンが付いているので、設定内容が正しいのか確認することができます。

まぁ、ここまでは準備です。この先が実際のアップロード作業です

アップロードの実行

画像ファイル以外のアップロードをShareXからやる必要があるのか?っていう問いは置いておいて、以下の方法でアップロードすることができます。

  • メインウィンドウのアップロードメニューの中の、「ファイル」「フォルダ」「クリップボード」
  • ファイルのエクスプローラから、右クリックメニューからのアップロードです

画像ファイルと違ってアップロード操作をするところはそんなに多くありません。

ShareXの全体の設定でアップロードを禁止状態にしてある場合は、前回の記事を参考にDisableUploadFALSEに設定をしてください。

1. ファイルを指定してアップロード

メインウィンドウの左メニューの「アップロード」からのファイル

このあとに、ファイルを選択するダイアログが出てくるので、アップロードしたいファイルを選択します。

ここで選んだファイルが必ずファイルアップローダーに渡るわけではなくて、ファイルの種類でアップローダーが違うのでご注意です。変なところにアップロードされてしまわないように注意です。

2. フォルダを指定してアップロード

フォルダを丸ごとファイルアップローダーに送りこむわけではなく、フォルダの中にあるファイルを1つ1つファイルタイプを判断しつつアップロード先を切り替えます。器用だなぁ。

たとえば、HTMLファイルと画像ファイルが入ったフォルダを指定すると

  • HTMLファイルはテキストアップローダーへ
  • 画像ファイルは画像アップローダーへ
  • それ以外にファイルがファイルアップローダーへ

取っ散らかりますね。こんなことしたい人いるのだろうか。。

3. クリップボードからアップロード

これはちょっと特殊ですね。クリップボードに入っているファイル情報から、ShareXのアップロード先にアップロードしたいときに使います。 エクスプローラでctrl+Cをしてコピーしたあとに、クリップボードからアップロードするのでしょう。(こんなことするかな)

ファイルのパスだけがダイアログに表示されます

表示PDFをコピーして実行してみたところ

エクスプローラから右クリックメニューでアップロード

実は一番使い勝手がいいかもしれない。
ファイルを右クリックして出てくるメニューの「Upload with ShareX」を選択するだけです。 *2

この方法でアップロードを行った場合も、今までと同じくファイルの種類に応じて、画像アップローダー、テキストアップローダー、ファイルアップローダーに振り分けられてアップロードされます。

Share with ShareXが表示されていないとき
アプリ設定の「シェル統合」の✅を付ければエクスプローラに出てくるようになります。

ファイルアップローダーに統一してしまえ

画像ファイルをGoogle PhotoではなくてGoogle Driveに入れたくなりますよね。というか、ファイル種類ごとにアップロード先を分けたいことがない! そんな人は、全てのアップロードの設定を万能なファイルアップローダーに統一してしまうことはできます。

テキストアップローダーの設定を例にしますが、一番下に「ファイルアップローダー」を展開する選択肢があります。ここでファイルアップローダーを選択すると、テキストの場合もファイルアップローダーを経由するようになります。

こうやって設定しておけば、スクショ画像もGoogle Driveに画像ファイルの形で保存されるようになります。

めでたしめでたし。

最後にまとめ

今回は、ShareXでキャプチャー画像以外のファイルをアップロードする方法をやってみました。 画像アップローダーとしてファイルアップローダーを設定できるようになるので、この設定はやっておいたほうがよいですよ。

自動にアップロードを設定すると何も気にせずにアップロードできてしまうので、パブリックな領域に機密な情報をアップロードしないようにお気を付けください。

参考URL

ファイルタイプを判定しているソースコード
https://github.com/ShareX/ShareX/blob/d16dcaa9ce7418f07a6ecf0ef72cf3029feece2f/ShareX.HelpersLib/Helpers/Helpers.cs#L68

今日はここまでです。

*1:ファイルタイプの判定はファイル名の拡張子で行っているようです。 https://github.com/ShareX/ShareX/blob/d16dcaa9ce7418f07a6ecf0ef72cf3029feece2f/ShareX.HelpersLib/Helpers/Helpers.cs#L68

*2:翻訳が漏れていて設定画面と異なってるので注意