Не могу получить список определений с веб-сайта, используя цикл for - PullRequest
0 голосов
/ 01 апреля 2020

Новый для python здесь. Я пытаюсь получить слово дня вместе с определениями и "вы знали?" отсюда https://www.merriam-webster.com/word-of-the-day

Есть идеи, что мне не хватает?

Пока все, что я могу получить, это следующее:

C:\Users\Think\PycharmProjects\wotd\venv\Scripts\python.exe C:/Users/Think/PycharmProjects/wotd/wotd.py
loon
Definition
1 : lout, idler

loon - это слово, а после строк - только первое определение. Есть еще 3, но я не могу получить их с помощью этого метода.

Спасибо за любые советы

    from bs4 import BeautifulSoup
import requests

sauce = requests.get('https://www.merriam-webster.com/word-of-the-day').text

soup = BeautifulSoup(sauce, 'lxml')

article = soup.find('article')

word = article.find('div', class_='word-and-pronunciation').h1.text
definition = article.find('div', class_='wod-definition-container').h2.text

print(word)
print(definition)

for article in soup.find_all('article'):
    defin = article.find('div', class_='wod-definition-container').p.text
    print(defin)

1 Ответ

0 голосов
/ 01 апреля 2020

article.find('div', class_='wod-definition-container').p.text возвращает только первый

. Попробуйте вот так.

for s in soup.find_all('article')[0].find('div', class_='wod-definition-container').find_all('p'):
    print(s.text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...