scrapy - CrawlSpider with Splash 在第一个 URL 后卡住

标签 scrapy scrapy-spider scrapy-splash

我正在编写一个爬虫蜘蛛,我需要在其中渲染一些带有飞溅的响应。我的蜘蛛基于 CrawlSpider。我需要呈现我的 start_url 响应来喂养我的爬行蜘蛛。不幸的是,我的爬行蜘蛛在呈现第一个响应后停止了。知道出了什么问题吗?

class VideoSpider(CrawlSpider):

    start_urls = ['https://juke.com/de/de/search?q=1+Mord+f%C3%BCr+2']

rules = (
    Rule(LinkExtractor(allow=()), callback='parse_items',process_request = "use_splash",),
)

def use_splash(self, request):
    request.meta['splash'] = {
            'endpoint':'render.html',
            'args':{
                'wait':0.5,
                }
            }     
    return request

def start_requests(self):
    for url in self.start_urls:
        yield scrapy.Request(url, self.parse, meta={
            'splash': {
                'endpoint': 'render.html',
                'args': {'wait': 0.5}
        }
    })  


def parse_items(self, response):      
    data = response.body
    print(data)

最佳答案

使用 SplashRequest 而不是 scrapy.Request ... 查看我的答案
CrawlSpider with Splash

关于scrapy - CrawlSpider with Splash 在第一个 URL 后卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37978365/

相关文章:

python - 数据收集 Urllib2+bs4 与 Scrapy

python - scrapy选择器xpath提取匹配的正则表达式或切片字符串

python - 将额外的值连同 url 一起传递给 scrapy spider

python - Scrapy - 如何在使用脚本启动蜘蛛时加载项目级别的 settings.py

python - Django 与 Scrapy 的关系如何保存项目?

python - Scrapy-Splash:无法使用 scrapinghub/splash:latest 作为基础镜像运行 docker 容器

python - 如何在 scrapy pipelines.py 文件中导入 django 模型

python - 使用 Scrapy Splash 将响应存储为文件

python - Scrapy Splash 截图?

python - 我如何开始使用 python 在 web Scrapy 中编写单元测试?