Планирование работы проекта
Содержимое файла www-news-com.py для парсинга сайта.
import json
import requests
from bs4 import BeautifulSoup
seed = "https://www.news.com/"
def get_page_content(link):
page = requests.get(link)
soup = BeautifulSoup(page.content, "html.parser")
page_info = {
"url": link, # ссылка на новость
"title": "", # заголовок новости
"img": "", # ссылка на изображение
"body": "", # текст новости
"author": "", # автор новости (если указывается)
"date": "", # дата публикации новости в формате YYYY-MM-DD
"time": "", # время публикации новости в формате HH:MM
}
# ...
return page_info
def get_links():
r = requests.get(seed)
# ...
# ['https://www.news.com/pag1', 'https://www.news.com/pag2', ...]
return []
def main():
links = get_links()
top_news = []
for link in links:
print(f"Обрабатывается {link}")
info = get_page_content(link)
top_news.append(info)
with open("www-news-com.json", "wt") as f:
json.dump(top_news, f)
print("Работа завершена")
# Главная функция
if __name__ == "__main__":
main()