Python 刮痒的蜘蛛没有显示出完整的结果

Python 刮痒的蜘蛛没有显示出完整的结果,python,web-scraping,scrapy,Python,Web Scraping,Scrapy,大家好,我正在尝试从代码中的给定链接获得完整的结果。但是我的代码没有给出所有的结果。此链接表示它包含2132个结果,但只返回20个结果: from scrapy.spider import Spider from scrapy.selector import Selector from tutorial.items import Flipkart class Test(Spider): name = "flip" allowed_domains = ["flipkart.com"]

大家好,我正在尝试从代码中的给定链接获得完整的结果。但是我的代码没有给出所有的结果。此链接表示它包含2132个结果,但只返回20个结果:

from scrapy.spider import Spider
from scrapy.selector import Selector
from tutorial.items import Flipkart
 class Test(Spider):
   name = "flip"
   allowed_domains = ["flipkart.com"]
   start_urls = ["http://www.flipkart.com/mobiles/pr?sid=tyy,4io&  otracker=ch_vn_mobile_filter_Mobile%20Brands_All"
]
  def parse(self, response):
     sel = Selector(response)
     sites = sel.xpath('//div[@class="pu-details lastUnit"]')
     items = []
     for site in sites:
         item = Flipkart()
         item['title'] = site.xpath('div[1]/a/text()').extract()
         items.append(item)
     return items**

这是因为该站点一次只显示20个结果,当用户滚动到页面底部时,可以使用JavaScript加载更多的结果

这里有两个选项:

  • 在站点上查找一个链接,该链接在单个页面上显示所有结果(怀疑该链接是否存在,但某些站点在传递可选查询字符串时可能会这样做)
  • 在spider中处理JavaScript事件。默认的Scrapy downloader不能做到这一点,因此您可以自己编程分析JS代码并发送事件信号,或者使用类似w/的东西让浏览器来处理它。我推荐后者,因为它比手动解释JS的方法更能防止故障。有关更多信息,请参阅和谷歌,关于这个主题有很多信息

请使用selenium帮助我了解这段代码,因为它很难应用。