python – 下载scrapy的整页

我想使用scrapy下载整页内容.

使用硒这很容易:

import os,sys
reload(sys)  
sys.setdefaultencoding('utf8')
from selenium import webdriver


url = 'https://es.wikipedia.org/wiki/Python'

driver = webdriver.Firefox()
driver.get(url)
content = driver.page_source
with open('source','w') as output:
    output.write(content)

但是硒比scrapy慢得多.

在scrapy中这是一种简单的方法吗?

我想将每个页面的代码保存在不同的文件文本中,而不是csv或json文件.此外,如果没有创建项目可行,这对于这样一个简单的任务来说似乎有些过分.

最佳答案 代码将下载此页面并将其保存在文件download-a-full-page-with-scrapy.html中

test_scr.py

import scrapy
class TestSpider(scrapy.Spider):
    name = "test"

    start_urls = [
        "https://stackoverflow.com/questions/38233614/download-a-full-page-with-scrapy",
    ]

    def parse(self, response):
        filename = response.url.split("/")[-1] + '.html'
        with open(filename, 'wb') as f:
            f.write(response.body)

通过此命令运行scrapy

scrapy runspider test_scr.py
点赞