записать текст после div в другом div - PullRequest
0 голосов
/ 10 октября 2018

У меня html-код:

    <h3 class="s-item__title s-item__title--has-tags" role="text">
        <div>
            <div class="s-item__title-tag">SOLD  Oct 9, 2018</div>
        </div>
        <span class="LIGHT_HIGHLIGHT">New Listing</span>MAX DELL PRECISION M4800 I7-4930XM EXTREME EDITION 3GHz 16GB 500GB SSD K2100 FHD
    </h3>

Я хочу получить «МАКСИМАЛЬНУЮ ТОЧНОСТЬ MLL00 M7000 I7-4930XM ВЫСОКОЕ ИЗДАНИЕ 3 ГГц 16 ГБ 500 ГБ SSD K2100 FHD», но когда я это сделаю:

pre_title_and_sold=rel_text.findAll("h3",{"class":"s-item__title s-item__title--has-tags"})
print(pre_title_and_sold)

Я получаю

SOLD  Oct 8, 2018Dell Precision M6500 17" LED Workstation i7 1.6GHz 4GB RAM 111GB HD DVDRW Win 7

Я хочу получить

"MAX DELL PRECISION M4800 I7-4930XM EXTREME EDITION 3GHz 16GB 500GB SSD K2100 FHD"

Я думаю, что мог бы сделать маршрут [0] .text (так как я перебираю веб-страницу) если я могу удалить раздел

<div class="s-item__title-tag">SOLD  Oct 9, 2018</div>

Я попытался просмотреть документацию, но был сбит с толку.мой вопрос чем-то похож на Получить содержимое после div внутри другого div , но уточнение все еще необходимо.

python 3.5 с BeautifulSoup win 10

1 Ответ

0 голосов
/ 11 октября 2018

Вы должны найти фактический тег, который содержит текст.Проверьте этот код.Я предоставил 2 варианта, чтобы найти текст!

from bs4 import BeautifulSoup
html = '''<h3 class="s-item__title s-item__title--has-tags" role="text">
        <div>
            <div class="s-item__title-tag">SOLD  Oct 9, 2018</div>
        </div>
        <span class="LIGHT_HIGHLIGHT">New Listing</span>MAX DELL PRECISION M4800 I7-4930XM EXTREME EDITION 3GHz 16GB 500GB SSD K2100 FHD
    </h3>'''

soup = BeautifulSoup(html, 'html.parser')
title = soup.find('h3', attrs={'s-item__title s-item__title--has-tags'}).span.next_sibling#first option
title1 = soup.select('.LIGHT_HIGHLIGHT')[0].next_sibling#second option
print(title)
print(title1)

Вывод:

MAX DELL PRECISION M4800 I7-4930XM EXTREME EDITION 3GHz 16GB 500GB SSD K2100 FHD
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...