Упражнение с заданием подключиться к странице и получить оттуда информацию

Я работаю над этой задачей прямо сейчас: используйте BeautifulSoup и запрашивает пакеты Python, чтобы распечатать список всех заголовков статей на домашней странице New York Times. Пока я могу подключиться только к странице:

import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.nytimes.com/")
if r.status_code == 200:
    print("Page opened successfully.")
    soup = BeautifulSoup(r.text,'html.parser')
else:
    print("Page not found!")
    exit(1)
r_html = r.text
exit(0)

Итак... мой вопрос: как я могу использовать библиотеку bs4 и исходный код со страницы, чтобы найти там нужную мне информацию (список статей с домашней страницы)?


person Hubertius    schedule 08.08.2020    source источник


Ответы (1)


Критерий/критерий сортировки (общие теги или свойства html для статей) является основной проблемой. Что я сделал ниже, так это вычеркнул все заголовки статей, которые появляются в теге.

import requests
from bs4 import BeautifulSoup
r = requests.get("https://www.nytimes.com/")
if r.status_code == 200:
    print("Page opened successfully.")
    soup = BeautifulSoup(r.text,'html.parser')
    result = soup.find_all('h2')
    headlines = []
    for i in result:
        if result.index(i) < len(result)-2:
            headlines.append(i.text)
else:
     print("Page not found!")
    exit(1)
r_html = r.text
print(headlines)
exit(0)

Вы можете потратить некоторое время на изучение исходного кода страницы, так как это даст вам больше информации о том, какие свойства уникальны для заголовков статей (с помощью with вы можете лучше очистить нужную информацию).

person Seyi Daniel    schedule 08.08.2020