通过块下载无限滚动网页块(Selenium / PhantomJS)

时间:2015-03-06 14:15:59

标签: selenium web-scraping phantomjs

我正在使用Selenium和PhantomJS滚动到Twitter搜索结果无限滚动页面的底部。

 driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

我手动设置了多次循环(我尝试估计网页驱动程序在崩溃之前可以重新加载多少次)。完成后,我抓住原始的html:

text_file.write(driver.page_source.encode("utf-8"))

这项工作正常,但我正在寻找一种方法来保持程序在没有“浏览器缓存”的情况下运行,或者填写任何内容。关于如何实现以下步骤的任何想法?

  1. 运行driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")命令X次

  2. 然后将加载的原始html转储到文本文件

  3. 然后再次运行X次驱动程序

  4. 然后将加载的原始html转储到另一个文本文件中,但不转储步骤1中加载的内容,只转储步骤3中加载的新内容

  5. 这会将浏览器/驱动程序内存清空为几个输出文本文件,并使循环实际上可以永久存在。有什么想法吗?

0 个答案:

没有答案