# Importar as bibliotecas necessárias
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import requests
import json
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
from sklearn.cluster import KMeans
# Definir a URL do seu blog
blog_url = "https://www.blogbombar.com.br/"
# Obter os dados dos posts do seu blog usando a API do WordPress
response = requests.get(blog_url + "wp-json/wp/v2/posts")
posts = json.loads(response.text)
# Criar um dataframe com os dados dos posts
df = pd.DataFrame(posts)
df = df[["id", "title", "content", "date", "link"]]
# Extrair o texto dos posts
df["text"] = df["content"].apply(lambda x: x["rendered"])
df["text"] = df["text"].str.replace("<[^<]+?>", "") # Remover as tags HTML
df["text"] = df["text"].str.lower() # Converter para minúsculo
# Criar um vetorizador TF-IDF para representar os posts como vetores numéricos
vectorizer = TfidfVectorizer(stop_words="portuguese")
X = vectorizer.fit_transform(df["text"])
# Calcular a similaridade entre os posts usando a distância do cosseno
similarity = cosine_similarity(X)
# Agrupar os posts em clusters usando o algoritmo K-Means
kmeans = KMeans(n_clusters=5, random_state=42)
kmeans.fit(X)
df["cluster"] = kmeans.labels_
# Visualizar a distribuição dos clusters
sns.countplot(x="cluster", data=df)
plt.xlabel("Cluster")
plt.ylabel
Comentários
Postar um comentário