2017-04-24 14 views
0

私はこのウェブサイトのすべての要素をクロールしています:私はこのウェブサイトのすべての要素をクロールしています:しかし、私は著者url bioをクロールする方法を理解していません。私は、CSSセレクタを使用しようとしました:cssセレクタを使ってpythonのscrapyでURLを抽出するには?

>>> response.css('a::attr(href)').extract() 
['/', '/login', '/author/Ralph-Waldo-Emerson', '/tag/life/page/1/', '/tag/regrets/page/1/', 'https://www.goodreads.com/quotes', 'https://scrapinghub.com'] 

その後:

>>> response.css('small.quote>span>a::attr(href)').extract() 

それでも、私は著者のバイオURLを取得しておりません。したがって、私はどのように上記のURLをCSSのセレクタで得ることができますか?

UPDATE

私はすでに私にできることを知っている:

response.css('a::attr(href)').extract()[2] 

しかし、私はこれは堅牢ではないと思います。どのようにバイオリンクを得るための任意のアイデア?

答えて

0

これはうまくいくかもしれない:

>>> os.path.dirname(response.url) 
'http://quotes.toscrape.com' 

>> response.css('a::attr(href)').extract()[2] 
u'/author/Bob-Marley' 

>>> os.path.dirname(response.url) + response.css('a::attr(href)').extract()[2] 
u'http://quotes.toscrape.com/author/Bob-Marley' 
関連する問題