13

次のような URL の膨大なリストがあります。

http://www.example.com/site/section1/VAR1/VAR2

VAR1 と VAR2 は URL の動的要素です。私がやりたいことは、この URL 文字列から VAR1 のみを抽出することです。urlparseを使用しようとしましたが、出力は次のようになります。

ParseResult(scheme='http', netloc='www.example.com', path='/site/section1/VAR1/VAR2', params='', query='', fragment='')
4

4 に答える 4

18

split()または、次のメソッドを適用できます。

>>> url = "http://www.example.com/site/section1/VAR1/VAR2"
>>> url.split("/")[-2:]
['VAR1', 'VAR2']
于 2015-07-01T19:40:52.893 に答える
15

これで大まかに覚えられます。を使用して、URL のさまざまなセクションを取得できますurlparse。ここで、pathbyurlparse(url).pathを取得してから、目的の変数をsplit()関数で取得できます

>>> from urlparse import urlparse
>>> url = 'http://www.example.com/site/section1/VAR1/VAR2' 
>>> urlparse(url)
ParseResult(scheme='http', netloc='www.example.com', path='/site/section1/VAR1/VAR2', params='', query='', fragment='')
>>> urlparse(url).path
'/site/section1/VAR1/VAR2'
>>> urlparse(url).path.split('/')[-2]
'VAR1'
于 2015-07-01T19:41:32.780 に答える
4

これをチェックしてください。文字列の末尾から開始する maxsplit オプションを使用すると、分割数を停止できるため、非常に効率的です。

最後に、インデックス作成を使用して、URL の最後の 2 つの部分を取得できます

>>> url.rsplit('/',2)[1:]
['VAR1', 'VAR2']
于 2015-07-01T20:01:11.547 に答える
0

私は単に試してみます

url = 'http://www.example.com/site/section1/VAR1/VAR2'
var1 = url.split('/')[-2]
于 2015-07-01T19:42:29.317 に答える