Spaces:
Sleeping
Sleeping
from api_files.src.base_api import Base_Blogger_Api | |
from api_files.src.models import Base_Blog_Data, Post | |
class Middle_Blogger_Api: | |
def update_blog_data(blog_data:Base_Blog_Data)->Base_Blog_Data: | |
new_blog_data = Base_Blogger_Api.get_blog_by_id(blog_data.id) | |
if new_blog_data: | |
print("Blog Actualizado.") | |
blog_data.nombre = new_blog_data.json().get('name') | |
blog_data.descripcion = new_blog_data.json().get('description') | |
blog_data.url = new_blog_data.json().get('url') | |
blog_data.posts = Middle_Blogger_Api.update_posts_list(blog_data) | |
for _posts in blog_data.posts: | |
for _categoria in _posts.categorias: | |
if _categoria not in blog_data.categorias: | |
blog_data.categorias.append(_categoria) | |
return blog_data | |
def update_posts_list(blog_data:Base_Blog_Data)->list: | |
posts_items = Base_Blogger_Api.get_all_posts(blog_data.id).json().get('items') | |
posts_list = [] | |
if posts_items: | |
for post_item in posts_items: | |
nuevo_post = Post(post_item.get('id')) | |
nuevo_post.fecha = post_item.get('published') | |
nuevo_post.titulo = post_item.get('title') | |
nuevo_post.contenido = post_item.get('content') | |
nuevo_post.categorias = post_item.get('labels') | |
posts_list.append(nuevo_post) | |
return posts_list |