Получить пустой массив, когда класс содержит пробелы - PullRequest
0 голосов
/ 15 апреля 2019

Python 2.7

Я хочу получить URL каждого фонового изображения нового заголовка и заголовки, но я использую xpath всегда получать пустой массив, когда я пытаюсь получить URL изображения.

Вот чтоЯ пытаюсь:

scrapy shell http://www.wownews.tw/fashion/movie

, а затем

response.body

Я могу видеть HTML-данные на терминале.Но когда я набираю

response.xpath('//div[@class="text ng-scope"]')

, получаю пустой массив, я думал, что это должно работать.

Проблема возникает из-за того, что класс содержит пробелы?

Как это исправить?Любая помощь будет оценена.

Я пытаюсь, команда все еще получает пустой массив

response.xpath('//div[contains(concat(" ", normalize-space(@class), " "), "text ng-scope")]')

1 Ответ

1 голос
/ 15 апреля 2019

Здесь есть все, что вам нужно

import json
import scrapy


class ListingSpider(scrapy.Spider):
    name = 'listing'

    start_urls = ['http://api.wownews.tw/f/pages/site/558fd617913b0c11001d003d?category=5590a6a3f0a8bf110060914d&children=true&limit=48&page=1']

    def parse(self, response):
        items = json.loads(response.body)['results']

        for item in items:
            yield item

См. https://medium.com/@yashpokar/scrape-any-website-in-the-internet-without-using-splash-or-selenium-68a6c9733369

...