2017-10-10 51 views
0

我正在使用python scrapy获取用户评论评论,其中可能有多个页面,我需要点击“查看更多”才能看到更多评论。使用python scrapy取消下一页评论

这是链接到的网页我要爬网: https://en.drivy.com/car-rental/berlin/dacia-dokker-218119

我注意到,如果审查意见超过10个,我需要点击“查看更多”,以获得后续的评论链接。 我也注意到“查看更多”的URL链接是https://en.drivy.com/cars/218119/reviews?page=2 & rel = next

但是,如果我使用scrapy去https ://en.drivy.com/cars/218119/reviews?page=2 & rel = next,该网站将我重定向回https:// en.drivy.com/car-rental/berlin/dacia-dokker-218119我真的无法得到接下来的十条评论。 (我不知道该网站使用cookie或会话ID,并确定我的scrapy作为新的访问)

我知道我可以使用python selenium打开网页,然后单击“查看更多”以获得评论,但是,硒很慢,我希望我可以用scrapy代替。

任何人都可以帮助我吗?或者至少给我一个方向继续?提前致谢。

回答

0

您应该设置"Accept: */*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"标题。您将捕获包含注释文本的JS对象。

yield Request("https://en.drivy.com/cars/218119/reviews?page=2&rel=next", parse = ..., ..., headers={'Accept': "*/*;q=0.5, text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"})

+0

谢谢你的回复。我试着按照你所显示的设置标题。然而,我收到此错误 2017-10-10 16:24:45 [scrapy.downloadermiddlewares.retry]调试:重试(失败1次):500内部服务器错误 – huahz

+0

您是否包含其他头文件(尤其是X-CSRF-Token)? –

+0

我包括令牌后,它的作品!真棒! – huahz