首页 > 解决方案 > Python Scrapy 蜘蛛正在抓取 url,但没有返回任何内容

问题描述

我正在尝试解析网站。这是我的第一个scrapy项目,我是python的初学者。使用这篇文章,我爬取了一个 url 并没有从中获取任何数据。

我尝试了一些不同的 xpath 查询并更改了设置中的 USER_AGENT,但它仍然没有返回任何内容。

这是描述我要解析的代码的一部分:

        def parse(self, response):
    SET_SELECTOR = '.set'
    for brickset in response.css(SET_SELECTOR):

        TITLE_SELECTOR= '//head//title/text'
        DATE_SELECTOR= '//table/tbody[2]//td[2]//text()'
        TEMP_SELECTOR= '//table/tbody[2]/tr[1]/td[1]//text()'
        yield {
            'title': brickset.xpath(TITLE_SELECTOR).extract_first(),
            'date': brickset.xpath(DATE_SELECTOR).extract_first(),
            'temp1':brickset.xpath(TEMP_SELECTOR).extract_first(),
        }

这是来自命令行的数据:

 DEBUG: Crawled (200) <GET https://www.gismeteo.ru/diary/4368/2019/6/> (referer: None)

标签: pythonscrapy

解决方案


您只是设置了错误的选择器。我已经为你测试过:

    def parse(self, response):
        TITLE_SELECTOR= '//div[@id="page_title"]//text()'
        DATE_SELECTOR= '//table//tbody[1]//text()'

        yield {
            'title': response.xpath(TITLE_SELECTOR).extract_first(),
            'date': response.xpath(DATE_SELECTOR).extract(),
        }

推荐阅读