#python #web-scraping #beautifulsoup #web-crawler
#python #очистка веб-страниц #beautifulsoup #веб-сканер
Вопрос:
Я хотел бы удалить html-тег, но сохранить текст между тегами и сохранить его в списке. Это мой следующий код:
comment_list = comment_container.findAll("div", {"class" : "comment-date"})
print(comment_list)
Вывод:
[<div class="comment-date">2018-9-11 03:58</div>,
<div class="comment-date">2018-4-4 17:10</div>,
<div class="comment-date">2018-4-26 01:06</div>,
<div class="comment-date">2018-7-19 13:48</div>,
<div class="comment-date">2018-4-12 11:39</div>,
<div class="comment-date">2019-3-14 21:12</div>,
<div class="comment-date">2019-3-4 15:43</div>,
<div class="comment-date">2019-3-12 13:20</div>,
<div class="comment-date">2019-3-10 22:32</div>,
<div class="comment-date">2019-3-8 15:22</div>]
Желаемый результат:
[2018-9-11 03:58, 2018-4-4 17:10, 2018-4-26 01:06,
2018-7-19 13:48, 2018-4-12 11:39, 2019-3-14 21:12,
2019-3-4 15:43, 2019-3-12 13:20, 2019-3-10 22:32, 2019-3-8 15:22]
Я могу извлекать текст по отдельности с помощью цикла for.
for commentDate in comment_list:
comments = commentDate.text
print(comments)
Я хотел бы использовать даты для сравнения (найти самую раннюю дату), поэтому я чувствую, что сохранение дат в список будет наиболее управляемым.
Ответ №1:
Вы можете преобразовать свой список div
элементов в список дат, используя понимание списка, подобное этому, чтобы получить желаемый результат:
comment_list = comment_container.findAll("div", {"class" : "comment-date"})
comment_dates = [comment.text for comment in comment_list]
print(comment_dates)
Комментарии:
1. @glhe13, пожалуйста, примите ответ, чтобы закрыть вопрос, если ваша проблема решена. Или вы можете поделиться любыми проблемами, с которыми вы столкнулись.