當我們想爬取div class="articlebody"下p中所有文本的時候,如果這樣寫
item['body'] = (response.xpath('//div[@class="articleBody"]/ptext()').extract()[0])
會發現僅僅是第一個p中的內容,而不是所有的,此時應該利用的是for循環。
divs=response.xpath('//div[@class="articleBody"]')
body=""
for p in divs.xpath('.//p/text()'):
body=body+ p.extract().strip()
item['body']=body