2016-06-01 8 views
2

だから私はAPIを使用せずに、私はDropboxの中のすべての共有リンクは次のように行われていることを結論付けましたが、公共のDropboxのURLからファイル名を抽出する方法が必要です:私はこのリンクを持っている。例えばこの場合、URLの一部をexctractするには?

dropbox.com/s/{random alphanemucric string}/{file name} 

:私はこのURLから「チェックリスト%281パーセント29.pdf」の部分を抽出することができ、私は私の正規表現は、これを抽出することになるだろうどのように任意のアイデアを持っていないどのように

https://www.dropbox.com/s/sbyuft7zscqzgbs/checklist%281%29.pdf?dl=0 

+1

'random_string、file_name = URL.split("/")[ - 2:]' prehaps? –

答えて

1

あなたは、次の操作を行うことができます

>>> name = 'https://www.dropbox.com/s/sbyuft7zscqzgbs/checklist%281%29.pdf?dl=0' 
>>> name.split('/')[-1].split('?')[0] 
'checklist%281%29.pdf' 

split("/")[-1]は後にすべてのものを取ります最後のスラッシュ、およびある場合はsplit('?')[0]がパラメータを削除します。

2

使用urlparse.urlsplit

import os 
import urlparse 

url = 'https://www.dropbox.com/s/sbyuft7zscqzgbs/checklist%281%29.pdf?dl=0' 

path = urlparse.urlsplit(url).path # /s/sbyuft7zscqzgbs/checklist%281%29.pdf 
filename = os.path.basename(path) # checklist%281%29.pdf 

前の答えは、

import os 

url = 'https://www.dropbox.com/s/sbyuft7zscqzgbs/checklist%281%29.pdf?dl=0' 
filename = os.path.basename(url).replace('?dl=0', '') 

print(filename) # Output: checklist%281%29.pdf 
関連する問題