Как получить вложенное текстовое значение с помощью scrapy - PullRequest
0 голосов
/ 09 мая 2020

Ниже извлеченный код div, из которого мне нужно получить вывод, попробовал обычное извлечение, не сработало

    <div class="container-inhalt">
            <div class="container-hauptinfo s16">
                <a title="Ki-dong Kim" id="0" href="/ki-do190">Ki-Kim</a>               </div>
            <div class="container-zusatzinfo-small">
                <b>Age:</b> 48                  Years&nbsp;

                <img src="https://tny/87.png?lm=1520611569" title="Korea, South" alt="Ka, Sh" class="flaggenrahmen" />                  <br />
                <b>Appointed:</b> Apr 23, 2019                  <br />
                <b>Contract expires:</b> -                  <br />
                <b>Success rate as coach:</b>  1,63 PPM             </div>
            <div class="container-zusatzinfo">
                                </div>
        </div>

Вывод: 1,63 PPM

1 Ответ

2 голосов
/ 09 мая 2020

Это будет solid вложение, если вы sh продолжите работать с веб-браузером, чтобы изучить XPath и Функции XPath , потому что почти всегда можно описать, как для нацеливания на конкретный c Node. Затем Scrapy дополнительно позволяет запускать регулярные выражения для этой части «последней мили»:

def parse(self, response):
    response.xpath('//b[contains("Success rate as coach:", text())]'
                   '/following-sibling::node()'
                   ).re(r'\s*(\S+)\s*')
# ['1,63', 'PPM']
...