

### 前提・実現したいこと

python
ftplibでCSVファイルをダウンロードしたいです。その際、ファイル名の日付部分が日々変わるので、正規表現で検索してダウンロードしてきたいと思います。  
しかし、以下エラーがでるので解決方法を教えてください。

### 発生している問題・エラーメッセージ

[code]

    TypeError: findall() missing 1 required positional argument: 'string'
    
[/code]

### 該当のソースコード

[code]

    import ftplib
    from logging import getLogger, StreamHandler, Formatter, DEBUG
    import re
    
    ## FTP情報
    HOST = '***.ne.jp'
    PORT = 21
    USER = '***'
    PASSWORD = '***'
    DIRECTORY = '/***/***'
    ## 取得するファイル名の生成
    
    FILE_NAME = (re.findall('item2019????????-?.csv')) #←ここを正規表現で検索したい！
    print(FILE_NAME)
    
    
[/code]

### 試したこと

reでFILE_NAME = (re.findall('item2019????????-?.csv'))
としたのですが、str型にするのにどうしたらいいのかわかりませんでした。

### 補足情報（FW/ツールのバージョンなど）

Python 3.7.3  
Windows7  
jupyter notebook


CC BY-SA 4.0
2019-12-30T09:24:58.707
61890
2019-12-30T10:31:40.697
37133
question
python3 windows ftp
python ftplibでファイルをダウンロードしてくるCSVファイルのファイル名を正規表現で検索&ダウンロードしたい！


[`re.findall`](https://docs.python.org/ja/3/library/re.html?highlight=findall#re.findall)は引数として`検索パターン`と`検索対象文字列`の最低2つが必要です。  
質問のコードは引数に検索パターンのみが指定されているためエラーとなっています。

下記のサンプルコードは[`ftp.nlst`](https://docs.python.org/ja/3/library/ftplib.html#ftplib.FTP.nlst)を使ってシンプルなファイル一覧を取得して、正規表現で該当するファイル名を探すコードの抜粋例です。  
ここでは[`re.match`](https://docs.python.org/ja/3/library/re.html?highlight=match#re.match)を使っていますが、マッチング方法や戻り値が違うだけで引数は`re.findall`と同様です。

[code]

    import re
    
    # items = ftp.nlst(".") # ファイル一覧が配列で返る
    items = [ 'item201912301913-1.csv', 'item201912301913-1.xlsx', 'item2019[8文字ならOK-！.csv', 'readme.txt' ] # 正規表現用サンプルコード
    for item in items:
        if re.match(r'item2019.{8}-.\.csv', item):
            print(item)
    
[/code]


CC BY-SA 4.0
2019-12-30T10:31:40.697
61892
2019-12-30T10:31:40.697
9820
61890
answer