pyspider系列文章的第三篇讲解了如何模拟【加载更多】按钮的点击事件来获得当前页面上的更多数据。
那我模拟【下一页】按钮的点击事件,会刷新当前页面上的数据,而不是增加当前页面的数据。这样的话怎么实现爬取所有数据呢?
因为我是要不停的模拟下一页按钮的点击事件,所以回调函数需要嵌套很多很多个?
或者是这样递归求解?
self.crawl('shouye.com', call_back=self.handler)
def handler():
// response.content当前页面数据存入数据库
url = getNextBtn(...)
self.crawl(url, callback=handler)
既然有按钮,那么它就有对应的接口,找到接口,直接去爬就可以了