2017-11-02 12 views
0

私はscrap 1.4を使用しています。twistedのバージョンは17.5.0です。pythonは3.6.3です。Scream error: 'NoneType'オブジェクトに属性 'strip'がありません

HTMLは、このようなものです:

<span class="number"> 20</span> 

私はクモを実行すると、エラーがある:

item['number'] = response.xpath('//span[@class="number"]/text()').extract_first().strip() 
AttributeError: 'NoneType' object has no attribute 'strip' 

私は何をすべき?

+1

extract_first()関数はこの特定のケースではNone要素を返す可能性が高いです。 try/exceptブロックの関数コードで返されたものを検証し、別の関数に渡すことができない値を得ることができない場合はそこを終了するか、代入の前にその答えを検証してstrip()がエラーになりません予期しない型付きオブジェクト。あなたがextract_firstにNoneを返すほうがいいかもしれません。 – BoboDarph

答えて

1

問題は、あなたが書いたxpathまたはドキュメント自体にあります。一致が見つからない場合、extract_firstメソッドはNoneを返します。あなたの例をオンラインのxpathバリデーターでチェックしたところ、すべてがうまくいっているようです。

関連する問題