python爬虫通过xpath如何获取br下内容
<div class="content">
<span>
早上,小姨子上门递给我一只兔子:“姐让我交给你的。"说完提着行李箱匆匆离开。<br/>
----------------------------------<br/>
十一点,老婆在单位打来电话:“兔子收到了?”<br/>
我:“嗯。”<br/>
老婆:“妹妹出差让我们照看下,你给它喂点菜叶吧。"<br/>
喂点菜叶?望着锅里的红烧兔肉我陷入了沉思。<br/>
然后我往里面加了点香菜……<br/>
晚十一点,小姨子打来电话,<br/>
“姐夫姐夫,我兔兔咋样?还好吧?”<br/>
我有点儿小心虚,急忙安慰:<br/>
“还在我这儿,不过在锅里,被我给炖了。<br/>嗯……你别担心,它走的时候很安详。”
…
</span>
</div>
如何获取span下的所有内容,包括 < br >下的内容。
代码如下:
item["content"] = html.xpath("//div[@class='content']/span/text()")
#主要部分,用""替换br
item["content"] = [i.replace("\n","") for i in item["content"]]
获取结果是一个数组:
['早上,小姨子上门递给我一只兔子:“姐让我交给你的。"说完提着行李箱匆匆离开。', '----------------------------------', '十一点,老婆在单位打来电话:“兔子收到了?”', '我:“嗯。”', '老婆:“妹妹出差让我们照看下,你给它喂点菜叶吧。"', '喂点菜叶?望着锅里的红烧兔肉我陷入了沉思。', '然后我往里面加了点香菜……', '晚十一点,小姨子打来电话,', '“姐夫姐夫,我兔兔咋样?还好吧?”', '我有点儿小心虚,急忙安慰:', '“还在我这儿,不过在锅里,被我给炖了。', '嗯……你别担心,它走的时候很安详。']
再将数组转化为字符串即可,将上面第二句代码改为:
item["content"] = "".join([i.replace("\n","") for i in item["content"]])