Как использовать и если заявление, основанное на результатах данных в HTML при использовании Python? - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь пометить элементы в csv-файле на основе содержимого в html-файле, который очищается с помощью BeautifulSoup.Для некоторых элементов требуется больше информации для выполнения того, что необходимо представить в указанном CSV-файле.

Я пытаюсь использовать оператор if и определить, что пометить что-либо, как в CSV-файле.

Вот код:

productid_container = container.find('dt', text="Product Id:")
productid = (productid_container.find_next_sibling('dd').text)

if prodictid is 'Bonus':
  productname = ((container["data-product"]) + " Bonus Edition")
else:
  productname = (container["data-product"])

и вот HTML.Вы можете увидеть, где написано бонус, вот что я имею в виду:

<dt>Product Id:</dt>
<dd>
  <span class="highlight">Bonus</span>
  <span class="separator">,</span>
</dd>

Код позже печатает все в файл csv без добавления «Bonus Edition», даже когда productid - «Bonus».

Есть ли что-то, что яотсутствует?Моя текущая теория заключается в том, что я не проверяю строку должным образом, но я не знаю, куда идти дальше, и даже если это так.

1 Ответ

0 голосов
/ 27 февраля 2019

Чтобы определить, является ли продукт бонусом или нет, вы можете сделать следующее:

productid_container = container.find('dt', text="Product Id:")
productid = (productid_container.find_next_sibling('dd').text)

if 'Bonus' in prodictid:
  productname = ((container["data-product"]) + " Bonus Edition")
else:
  productname = (container["data-product"])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...