我是scrapy的新手,并且花了很长时间试图解决我认为应该是两个简单的问题。
(1)我正在尝试抓取这个网站:
具体来说,我试图只抓取文章的文本(所以没有图片、标题、标题等......)。我正在使用的代码是:
response.css('div.body_1gnLA p::text').extract()
问题是在文章的底部,有一个“关于作者”的部分被包含在抓取中,这是我不想要的。我不想要的具体文本如下:
“在国务院任职 24 年的老兵彼得·范布伦是《我们的意思是:我如何帮助输掉伊拉克人民的心灵和思想的战斗:二战日本小说》的作者。@WeMeantWell 观点本文所表达的并非路透社新闻。”
(2) 文章中,部分文字带有超链接。例如,在第一句话
“伊拉克总理海德尔·阿巴迪于 2017 年 12 月 9 日宣布战胜伊斯兰国”
宣布胜利是超链接的。当我使用上面编写的代码进行抓取时,它给了我
“伊拉克总理海德尔·阿巴迪于 2017 年 12 月 9 日对伊斯兰国提出异议”
请注意,缺少超链接部分“宣布胜利”。我怎样才能解决这个问题?我只希望完整句子的文本被刮掉;我不在乎 href 部分。
如果有人可以提供帮助,将不胜感激!