2017-03-20 5 views
-1

私はScrapyで新しく、URLを取得して、必要な部分だけを抽出しようとしています。例:URLから一部のみを抽出する

>>> imgs = response.xpath ('//div[@id="productImageHolder"]/img/@src').extract() 
>>> print imgs 
ExtendedSitesCatalogAssetStore/images/catalog/productImages/41/5060119298441/5060119298441_L.jpeg 

しかし、私はちょうどこれを取得したい:5060119298441。助けてください?一般的に

+0

imgs.split( "/)[ - 2] – iamdeowanshi

+0

ありがとうございました" iamdeowanshi "!それは働いた! –

答えて

3

、あなたはURL文字列に.split()メソッドを呼び出すと、最後から2番目の要素を取得し、それを解決することができます:

img.split("/")[-2] 

それとも、あなたもScrapyのSelectorインスタンスの.re_first() method使用できます

response.xpath('//div[@id="productImageHolder"]/img/@src').re_first(r"(\d+)_\w+\.jpeg$") 

(または複数の要素に.re_first()の代わりに.re()を使用)。

+0

ありがとうたくさん!!!!!!" alecxe "! !!! –

関連する問題