GoogleドライブのファイルリストをPythonでつくる

2020/05/19

【Python】 Python

t f B! P L

やりたいこと

Googleドライブにアップしてあるたくさんのファイルの一覧がほしいとき、Pythonを使ってリストを作成します。


方針としては、

  • PyDriveでAPIを使って接続
  • GoogleColab上で確認する

  • の2つがありますが、ファイル名だけを簡単に取得したいので、
    後者のGoogleColabを使って確認する方法です。

    ながれ

  • Google Colabでドライブを連携
  • Google Colab上で、パスを指定してファイルリストを取得
  • お望みのformatで出力する

  • Google Colabでドライブを連携

    参考:ColaboratoryでのGoogle Driveへのマウントが簡単になっていたお話 - Qiita


    今は、コードを書かずに、GoogleColab上でカンタンにドライブとの連携がとれます。

    まずGoogle Colabで新規ファイルを作成


    左の列から「ファイル」を選択

    「ドライブをマウント」を選びます。


    権限を許可する

    連携できた

    drive > My Drive などのフォルダが確認できたら成功です。

    パスを指定してファイルリストを取得

    import glob
    
    # 特定のフォルダのファイルをチェック
    files = glob.glob('path/*.pdf', recursive=True)
    for file in files:
        print(file.split("/")[-1].strip(".pdf"))
    
    # 再起的に、特定のフォルダ以下すべてのファイルをチェック
    files = glob.glob('drive/My Drive/**/*.pdf', recursive=True)
    for file in files:
        print(file.split("/")[-1].strip(".pdf"))
    

    肝心のコードはこちらです。 この場合は、拡張子が.pdfのファイルのみを対象にしています。
    また、出力として単にprintしているだけですが、ファイルに書き込むなりお好みで変更できると思います。

    まとめ

    外部のサービスでファイルリストの取得、なんてのもありそうですが、Pythonでもサクッとできてしまうので、ぜひ使ってみて下さい。

    QooQ