2017-03-01 14 views
0

WebページからURLを取得し、そのWebページをフォルダ内の.htmlファイルとしてデスクトップに保存しました。今私はそれらの同じ.htmlファイルを使用し、私の次のプログラムへの入力としてそれらを設定する必要があります。私の質問は、仕事の残りの部分を行う関数への入力として約400以上のこれらのファイルをすべてどのように取得するのですか?私はまた、現在Python 2.7で作業していますが、私はそれを使用する必要がある場合、私は最新のpythonを利用できます。Python:多くのファイルを入力として使用する

+0

'輸入OS yourpath = 'ファイルを//する。//パス' をslove必要があります。 os.listdir() '? – 9000

+0

すべてのファイルを表示するには 'glob.glob("/path/to/*。html ")'を使用してください – haifzhan

答えて

0

あなたの第二の機能はそうのようなファイル名のリストを取ることができる:

def process(files): 
    for f in files: 
     # do stuff 

そして、あなたはあなたがすべてのファイルを返すようにglob.glob()を使用することができます

import os 
files = os.listdir('/path/to/files') 
+0

私のファイルがhtmlの場合でもこれを使用できますか?私はそれらを開いて読まなければならないので、私はまだurlopen(ファイル)が必要でしょうか? –

+0

Pythonはあなたのファイルの内容を気にしません。問題はあなたのマシンにローカルに保存されているhtmlファイルですか?そうであれば、 'urlopen'は不要です。なぜならあなたは' open'を使ってそれらを読むことができるからです。 – thaavik

+0

はい私はファイルを開いている(パス)今私の現在の問題は、parapraphsテキストのみを取得し、それをトークン化しようとしているので、フォルダに格納されているファイルを持っている。私はトークン化するためにntlkを使用していますが、まず段落タグから正しいテキストが必要です。私は美しいスープを試しています.find_all( 'p') –

0

を実行して、ファイルのリストを取得することができますパターンと一致するパス名を指定してから、すべてのファイルを繰り返し処理して1つずつ処理します。

1

これはあなたの問題

import os 
for root, dirs, files in os.walk(yourpath, topdown=False):#topdown traversing 
    for name in files: 
     print(os.path.join(root, name)) 
     stuff 
    for name in dirs: 
     print(os.path.join(root, name)) 
     stuff 
関連する問題