如何从无限滚动网站上抓取所有内容?

我正在用scrap。

我正在使用的网站具有无限滚动。

该网站上有大量帖子,但我只抓取了13。

如何scrape 其余的帖子?

这是我的代码:

class exampleSpider(scrapy.Spider):

name = "example"

#from_date = datetime.date.today() - datetime.timedelta(6*365/12)

allowed_domains = ["example.com"]

start_urls = [

"http://www.example.com/somethinghere/"

]

def parse(self, response):

for href in response.xpath("//*[@id='page-wrap']/div/div/div/section[2]/div/div/div/div[3]/ul/li/div/h1/a/@href"):

url = response.urljoin(href.extract())

yield scrapy.Request(url, callback=self.parse_dir_contents)

def parse_dir_contents(self, response):

#scrape contents code here

回答:

我使用Selenium而不是,scrapy但是你必须能够执行等效操作,而我要做的是在加载文件时运行一些JavaScript,即:

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

而且我一直坚持下去,直到它不再滚动为止。它不是很漂亮,不能在生产中使用,但是对特定工作有效。

以上是 如何从无限滚动网站上抓取所有内容? 的全部内容, 来源链接: utcz.com/qa/406935.html

回到顶部