Los mapas de sitios de noticias usan protocolos de mapas de sitios diferentes y únicos para proporcionar más información a los motores de búsqueda de noticias.
Un sitemap de noticias contiene las noticias publicadas en las últimas 48 horas.
Las etiquetas del mapa del sitio de noticias incluyen el título, el idioma, el nombre, el género, la fecha de publicación, las palabras clave e incluso las cotizaciones bursátiles de la publicación de noticias.
¿Cómo puede utilizar estos mapas de sitio a su favor para la investigación de contenido y el análisis competitivo?
En este tutorial de Python, aprenderá un proceso de 10 pasos para analizar mapas de sitios de noticias y visualizar tendencias de actualidad descubiertas en ellos.
Notas de limpieza para comenzar
Este tutorial fue escrito durante la invasión rusa de Ucrania.
Usando el aprendizaje automático, incluso podemos etiquetar las fuentes de noticias y los artículos según qué fuente de noticias es «objetiva» y qué fuente de noticias es «sarcástica».
Pero para simplificar las cosas, nos centraremos en temas con análisis de frecuencia.
Usaremos más de 10 fuentes de noticias globales en los EE. UU. y el Reino Unido.
Nota: Nos gustaría incluir fuentes de noticias rusas, pero no tienen un mapa del sitio de noticias adecuado. Incluso si lo hubieran hecho, bloquean las solicitudes externas.
Comparando la aparición de palabras de “invasión” y “liberación” de fuentes de noticias occidentales y orientales muestra el beneficio de los métodos de análisis de texto de frecuencia de distribución.
Lo que necesita para analizar contenido de noticias con Python
Las bibliotecas de Python relacionadas para auditar un mapa del sitio de noticias para comprender la estrategia de contenido de la fuente de noticias se enumeran a continuación:
- Herramientas publicitarias.
- pandas.
- Plotly Express, Subplots y Graph Objects.
- Re (regex).
- Cuerda.
- NLTK (Corpus, Palabras vacías, Ngramas).
- Unicodedatos.
- Matplotlib.
- Comprensión básica de la sintaxis de Python.
10 pasos para el análisis del mapa del sitio de noticias con Python
¿Todo listo? Hagámoslo.
1. Tome las URL de noticias del mapa del sitio de noticias
Elegimos «The Guardian», «New York Times», «Washington Post», «Daily Mail», «Sky News», «BBC» y «CNN» para examinar las URL de noticias de los mapas del sitio de noticias.
df_guardian = adv.sitemap_to_df("http://www.theguardian.com/sitemaps/news.xml") df_nyt = adv.sitemap_to_df("https://www.nytimes.com/sitemaps/new/news.xml.gz") df_wp = adv.sitemap_to_df("https://www.washingtonpost.com/arcio/news-sitemap/") df_bbc = adv.sitemap_to_df("https://www.bbc.com/sitemaps/https-index-com-news.xml") df_dailymail = adv.sitemap_to_df("https://www.dailymail.co.uk/google-news-sitemap.xml") df_skynews = adv.sitemap_to_df("https://news.sky.com/sitemap-index.xml") df_cnn = adv.sitemap_to_df("https://edition.cnn.com/sitemaps/cnn/news.xml")
2. Examine un mapa del sitio de noticias de ejemplo con Python
He usado BBC como ejemplo para demostrar lo que acabamos de extraer de estos mapas de sitios de noticias.
df_bbc
El mapa del sitio de la BBC tiene las siguientes columnas.
df_bbc.columns
Las estructuras de datos generales de estas columnas se encuentran a continuación.
df_bbc.info()
La BBC no usa la columna “news_publication” y otras.
3. Encuentra las palabras más utilizadas en las URL de las publicaciones de noticias
Para ver las palabras más utilizadas en las URL de los sitios de noticias, necesitamos usar los métodos «str», «explode» y «split».
df_dailymail["loc"].str.split("/").str[5].str.split("-").explode().value_counts().to_frame()
loc | |
---|---|
article | 176 |
Russian | 50 |
Ukraine | 50 |
says | 38 |
reveals | 38 |
... | ... |
readers | 1 |
Red | 1 |
Cross | 1 |
provide | 1 |
weekend.html | 1 |
5445 rows × 1 column
Vemos que para el “Daily Mail”, “Rusia y Ucrania” son el tema principal.
4. Encuentra el idioma más utilizado en las publicaciones de noticias
La estructura de URL o la sección “idioma” de la publicación de noticias se puede utilizar para ver los idiomas más utilizados en las publicaciones de noticias.
En esta muestra, usamos «BBC» para ver su priorización de idioma.
df_bbc["publication_language"].head(20).value_counts().to_frame()
idioma_publicacion | |
en | 698 |
fa | 52 |
sr | 52 |
ar | 47 |
mr | 43 |
hi | 43 |
gu | 41 |
ur | 35 |
pt | 33 |
te | 31 |
ta | 31 |
cy | 30 |
ha | 29 |
tr | 28 |
es | 25 |
sw | 22 |
cpe | 22 |
ne | 21 |
pa | 21 |
yo | 20 |
20 rows × 1 column
Para llegar a la población rusa a través de Google News, todas las fuentes de noticias occidentales deben utilizar el idioma ruso.
Algunas instituciones de noticias internacionales comenzaron a realizar esta perspectiva.
Si usted es un SEO de noticias, es útil ver las publicaciones en ruso de los competidores para distribuir las noticias objetivas a Rusia y competir dentro de la industria de las noticias.
5. Audite los títulos de noticias por frecuencia de palabras
Usamos BBC para ver los «títulos de las noticias» y qué palabras son más frecuentes.
df_bbc["news_title"].str.split(" ").explode().value_counts().to_frame()
news_title | |
---|---|
to | 232 |
in | 181 |
- | 141 |
of | 140 |
for | 138 |
... | ... |
ፊልም | 1 |
ብላክ | 1 |
ባንኪ | 1 |
ጕሒላ | 1 |
niile | 1 |
11916 rows × 1 columns
El problema aquí es que tenemos «todo tipo de palabras en los títulos de las noticias», como «palabras vacías sin contexto».
Necesitamos limpiar este tipo de términos no categóricos para entender mejor su enfoque.
from nltk.corpus import stopwords stop = stopwords.words('english') df_bbc_news_title_most_used_words = df_bbc["news_title"].str.split(" ").explode().value_counts().to_frame() pat = r'b(?:{})b'.format('|'.join(stop)) df_bbc_news_title_most_used_words.reset_index(drop=True, inplace=True) df_bbc_news_title_most_used_words["without_stop_words"] = df_bbc_news_title_most_used_words["words"].str.replace(pat,"") df_bbc_news_title_most_used_words.drop(df_bbc_news_title_most_used_words.loc[df_bbc_news_title_most_used_words["without_stop_words"]==""].index, inplace=True) df_bbc_news_title_most_used_words
Hemos eliminado la mayoría de las palabras vacías con la ayuda del método «regex» y «reemplazar» de Pandas.
La segunda preocupación es eliminar los «puntuaciones».
Para eso, usaremos el módulo “string” de Python.
import string df_bbc_news_title_most_used_words["without_stop_word_and_punctation"] = df_bbc_news_title_most_used_words['without_stop_words'].str.replace('[{}]'.format(string.punctuation), '') df_bbc_news_title_most_used_words.drop(df_bbc_news_title_most_used_words.loc[df_bbc_news_title_most_used_words["without_stop_word_and_punctation"]==""].index, inplace=True) df_bbc_news_title_most_used_words.drop(["without_stop_words", "words"], axis=1, inplace=True) df_bbc_news_title_most_used_words
news_title | without_stop_word_and_punctation | |
---|---|---|
Ukraine | 110 | Ukraine |
v | 83 | v |
de | 61 | de |
Ukraine: | 60 | Ukraine |
da | 51 | da |
... | ... | ... |
ፊልም | 1 | ፊልም |
ብላክ | 1 | ብላክ |
ባንኪ | 1 | ባንኪ |
ጕሒላ | 1 | ጕሒላ |
niile | 1 | niile |
11767 rows × 2 columns
O utilice «df_bbc_news_title_most_used_words[“news_title”].to_frame()” para tomar una imagen más clara de los datos.
news_title | |
---|---|
Ukraine | 110 |
v | 83 |
de | 61 |
Ukraine: | 60 |
da | 51 |
... | ... |
ፊልም | 1 |
ብላክ | 1 |
ባንኪ | 1 |
ጕሒላ | 1 |
niile | 1 |
11767 rows × 1 columns
Vemos 11.767 palabras únicas en las URL de la BBC, y Ucrania es la más popular, con 110 apariciones.
Hay diferentes frases relacionadas con Ucrania del marco de datos, como «Ucrania:».
El «Tokenize NLTK» se puede usar para unir este tipo de variaciones diferentes.
La siguiente sección usará un método diferente para unirlos.
Nota: si desea facilitar las cosas, use Advertools como se muestra a continuación.
adv.word_frequency(df_bbc["news_title"],phrase_len=2, rm_words=adv.stopwords.keys())
El resultado está debajo.
“adv.word_frequency” tiene los atributos “phrase_len” y “rm_words” para determinar la longitud de la ocurrencia de la frase y eliminar las palabras vacías.
Puedes decirme, ¿por qué no lo usé en primer lugar?
Quería mostrarles un ejemplo educativo con «regex, NLTK y la cadena» para que puedan entender lo que sucede detrás de escena.
6. Visualiza las palabras más utilizadas en los títulos de las noticias
Para visualizar las palabras más utilizadas en los títulos de las noticias, puede utilizar el bloque de código a continuación.
df_bbc_news_title_most_used_words["news_title"] = df_bbc_news_title_most_used_words["news_title"].astype(int) df_bbc_news_title_most_used_words["without_stop_word_and_punctation"] = df_bbc_news_title_most_used_words["without_stop_word_and_punctation"].astype(str) df_bbc_news_title_most_used_words.index = df_bbc_news_title_most_used_words["without_stop_word_and_punctation"] df_bbc_news_title_most_used_words["news_title"].head(20).plot(title="The Most Used Words in BBC News Titles")
Te das cuenta de que hay una “línea discontinua”.
¿Recuerdas «Ucrania» y «Ucrania:» en el marco de datos?
Cuando eliminamos la «puntuación», el segundo y el primer valor se vuelven iguales.
Es por eso que el gráfico de líneas dice que Ucrania apareció 60 veces y 110 veces por separado.
Para evitar tal discrepancia de datos, use el bloque de código a continuación.
df_bbc_news_title_most_used_words_1 = df_bbc_news_title_most_used_words.drop_duplicates().groupby('without_stop_word_and_punctation', sort=False, as_index=True).sum() df_bbc_news_title_most_used_words_1
news_title | |
---|---|
without_stop_word_and_punctation | |
Ukraine | 175 |
v | 83 |
de | 61 |
da | 51 |
и | 41 |
... | ... |
ፊልም | 1 |
ብላክ | 1 |
ባንኪ | 1 |
ጕሒላ | 1 |
niile | 1 |
11109 rows × 1 columns
Las filas duplicadas se eliminan y sus valores se suman.
Ahora, visualicémoslo de nuevo.
7. Extraiga los N-Grams más populares de los títulos de noticias
Extraer n-gramas de los títulos de las noticias o normalizar las palabras de URL y formar n-gramas para comprender la actualidad general es útil para comprender qué publicación de noticias aborda qué tema. Así es cómo.
import nltk import unicodedata import re def text_clean(content):
lemmetizer = nltk.stem.WordNetLemmatizer() stopwords = nltk.corpus.stopwords.words('english') content = (unicodedata.normalize('NFKD', content) .encode('ascii', 'ignore') .decode('utf-8', 'ignore') .lower()) words = re.sub(r'[^ws]', '', content).split() return [lemmetizer.lemmatize(word) for word in words if word not in stopwords]
raw_words = text_clean(''.join(str(df_bbc['news_title'].tolist())))
raw_words[:10]
OUTPUT>>> ['oneminute', 'world', 'news', 'best', 'generation', 'make', 'agyarkos', 'dream', 'fight', 'card']
El resultado muestra que hemos «lematizado» todas las palabras en los títulos de las noticias y las hemos puesto en una lista.
La lista de comprensión proporciona un atajo rápido para filtrar fácilmente cada palabra vacía.
El uso de “nltk.corpus.stopwords.words(“english”)” proporciona todas las palabras vacías en inglés.
Pero puede agregar palabras vacías adicionales a la lista para expandir la exclusión de palabras.
El “unicodedata” es para canonicalizar los caracteres.
Los caracteres que vemos son en realidad bytes Unicode como «U+2160 NÚMERO ROMANO UNO» y el carácter romano «U+0049 LETRA I MAYÚSCULA LATINA» son en realidad los mismos.
El «unicodedata.normalize» distingue las diferencias de caracteres para que el lematizador pueda diferenciar las diferentes palabras con caracteres similares entre sí.
pd.set_option("display.max_colwidth",90) bbc_bigrams = (pd.Series(ngrams(words, n = 2)).value_counts())[:15].sort_values(ascending=False).to_frame() bbc_trigrams = (pd.Series(ngrams(words, n = 3)).value_counts())[:15].sort_values(ascending=False).to_frame()
A continuación, verá los «n-gramas» más populares de BBC News.
Para visualizar simplemente los n-gramas más populares de una fuente de noticias, use el bloque de código a continuación.
bbc_bigrams.plot.barh(color="red", width=.8,figsize=(10 , 7))
“Ucrania, guerra” es la noticia de moda.
También puede filtrar los n-gramas para «Ucrania» y crear un par de «entidad-atributo».
Rastrear estas URL y reconocer las «entidades de tipo de persona» puede darle una idea de cómo la BBC aborda las situaciones de interés periodístico.
Pero va más allá de los «sitemaps de noticias». Por lo tanto, es para otro día.
Para visualizar los n-gramas populares de los mapas del sitio de la fuente de noticias, puede crear una función de Python personalizada como se muestra a continuación.
def ngram_visualize(dataframe:pd.DataFrame, color:str="blue") -> pd.DataFrame.plot: dataframe.plot.barh(color=color, width=.8,figsize=(10 ,7)) ngram_visualize(ngram_extractor(df_dailymail))
El resultado está debajo.
Para hacerlo interactivo, agregue un parámetro adicional como se muestra a continuación.
def ngram_visualize(dataframe:pd.DataFrame, backend:str, color:str="blue", ) -> pd.DataFrame.plot: if backend=="plotly": pd.options.plotting.backend=backend return dataframe.plot.bar() else: return dataframe.plot.barh(color=color, width=.8,figsize=(10 ,7))
ngram_visualize(ngram_extractor(df_dailymail), backend="plotly")
Como ejemplo rápido, consulte a continuación.
8. Cree sus propias funciones personalizadas para analizar los mapas del sitio de fuentes de noticias
Cuando audite mapas de sitios de noticias repetidamente, será necesario un pequeño paquete de Python.
A continuación, puede encontrar cuatro cadenas de funciones rápidas de Python diferentes que utilizan todas las funciones anteriores como una devolución de llamada.
Para limpiar un elemento de contenido textual, use la función a continuación.
def text_clean(content): lemmetizer = nltk.stem.WordNetLemmatizer() stopwords = nltk.corpus.stopwords.words('english') content = (unicodedata.normalize('NFKD', content) .encode('ascii', 'ignore') .decode('utf-8', 'ignore') .lower()) words = re.sub(r'[^ws]', '', content).split() return [lemmetizer.lemmatize(word) for word in words if word not in stopwords]
Para extraer los n-gramas de los títulos de noticias del mapa del sitio de un sitio web de noticias específico, use la función a continuación.
def ngram_extractor(dataframe:pd.DataFrame|pd.Series): if "news_title" in dataframe.columns: return dataframe_ngram_extractor(dataframe, ngram=3, first=10)
Utilice la siguiente función para convertir los n-gramas extraídos en un marco de datos.
def dataframe_ngram_extractor(dataframe:pd.DataFrame|pd.Series, ngram:int, first:int): raw_words = text_clean(''.join(str(dataframe['news_title'].tolist()))) return (pd.Series(ngrams(raw_words, n = ngram)).value_counts())[:first].sort_values(ascending=False).to_frame()
Para extraer los sitemaps de varios sitios web de noticias, utilice la siguiente función.
def ngram_df_constructor(df_1:pd.DataFrame, df_2:pd.DataFrame): df_1_bigrams = dataframe_ngram_extractor(df_1, ngram=2, first=500) df_1_trigrams = dataframe_ngram_extractor(df_1, ngram=3, first=500) df_2_bigrams = dataframe_ngram_extractor(df_2, ngram=2, first=500) df_2_trigrams = dataframe_ngram_extractor(df_2, ngram=3, first=500) ngrams_df = { "df_1_bigrams":df_1_bigrams.index, "df_1_trigrams": df_1_trigrams.index, "df_2_bigrams":df_2_bigrams.index, "df_2_trigrams": df_2_trigrams.index, } dict_df = (pd.DataFrame({ key:pd.Series(value) for key, value in ngrams_df.items() }).reset_index(drop=True) .rename(columns={"df_1_bigrams":adv.url_to_df(df_1["loc"])["netloc"][1].split("www.")[1].split(".")[0] + "_bigrams", "df_1_trigrams":adv.url_to_df(df_1["loc"])["netloc"][1].split("www.")[1].split(".")[0] + "_trigrams", "df_2_bigrams": adv.url_to_df(df_2["loc"])["netloc"][1].split("www.")[1].split(".")[0] + "_bigrams", "df_2_trigrams": adv.url_to_df(df_2["loc"])["netloc"][1].split("www.")[1].split(".")[0] + "_trigrams"})) return dict_df
A continuación, puede ver un ejemplo de caso de uso.
ngram_df_constructor(df_bbc, df_guardian)
Solo con estas cuatro funciones de python personalizadas anidadas puede hacer lo siguiente.
- Fácilmente, puede visualizar estos n-gramas y el sitio web de noticias cuenta para verificar.
- Puede ver el enfoque de los sitios web de noticias para el mismo tema o diferentes temas.
- Puede comparar su redacción o el vocabulario de los mismos temas.
- Puede ver cuántos subtemas diferentes de los mismos temas o entidades se procesan de forma comparativa.
No puse los números para las frecuencias de los n-gramas.
Pero, los primeros clasificados son los más populares de esa fuente de noticias específica.
Para examinar las siguientes 500 filas, haga clic en aquí.
9. Extraiga las palabras clave de noticias más utilizadas de los mapas del sitio de noticias
Cuando se trata de palabras clave de noticias, sorprendentemente todavía están activas en Google.
Por ejemplo, microsoft bing y Google no creas que las «palabras clave meta» son una señal útil, a diferencia de Yandex.
Sin embargo, todavía se utilizan palabras clave de noticias de los mapas de sitios de noticias.
Entre todas estas fuentes de noticias, solo The Guardian utiliza las palabras clave de noticias.
Y es útil comprender cómo usan las palabras clave de noticias para proporcionar relevancia.
df_guardian["news_keywords"].str.split().explode().value_counts().to_frame().rename(columns={"news_keywords":"news_keyword_occurence"})
Puede ver las palabras más utilizadas en las palabras clave de noticias para The Guardian.
news_keyword_occurence | |
---|---|
news, | 250 |
World | 142 |
and | 142 |
Ukraine, | 127 |
UK | 116 |
... | ... |
Cumberbatch, | 1 |
Dune | 1 |
Saracens | 1 |
Pearson, | 1 |
Thailand | 1 |
1409 rows × 1 column
La visualización está debajo.
(df_guardian["news_keywords"].str.split().explode().value_counts() .to_frame().rename(columns={"news_keywords":"news_keyword_occurence"}) .head(25).plot.barh(figsize=(10,8), title="The Guardian Most Used Words in News Keywords", xlabel="News Keywords", legend=False, ylabel="Count of News Keyword"))
El “,” al final de las palabras clave de noticias representa si se trata de un valor separado o parte de otro.
Le sugiero que no elimine los «puntuaciones» o «palabras vacías» de las palabras clave de noticias para que pueda ver mejor su estilo de uso de palabras clave de noticias.
Para un análisis diferente, puede utilizar “,” como separador.
df_guardian["news_keywords"].str.split(",").explode().value_counts().to_frame().rename(columns={"news_keywords":"news_keyword_occurence"})
La diferencia de resultados se muestra a continuación.
news_keyword_occurence | |
---|---|
World news | 134 |
Europe | 116 |
UK news | 111 |
Sport | 109 |
Russia | 90 |
... | ... |
Women's shoes | 1 |
Men's shoes | 1 |
Body image | 1 |
Kae Tempest | 1 |
Thailand | 1 |
1080 rows × 1 column
Concéntrese en la «división («,»)».
(df_guardian["news_keywords"].str.split(",").explode().value_counts() .to_frame().rename(columns={"news_keywords":"news_keyword_occurence"}) .head(25).plot.barh(figsize=(10,8), title="The Guardian Most Used Words in News Keywords", xlabel="News Keywords", legend=False, ylabel="Count of News Keyword"))
Puede ver la diferencia de resultados para la visualización a continuación.
Desde «Chelsea» hasta «Vladamir Putin» o «Guerra de Ucrania» y «Roman Abramovich», la mayoría de estas frases se alinean con los primeros días de la invasión rusa de Ucrania.
Utilice el bloque de código siguiente para visualizar de forma interactiva dos palabras clave de noticias de sitemaps de sitios web de noticias diferentes.
df_1 = df_guardian["news_keywords"].str.split(",").explode().value_counts().to_frame().rename(columns={"news_keywords":"news_keyword_occurence"}) df_2 = df_nyt["news_keywords"].str.split(",").explode().value_counts().to_frame().rename(columns={"news_keywords":"news_keyword_occurence"}) fig = make_subplots(rows = 1, cols = 2) fig.add_trace( go.Bar(y = df_1["news_keyword_occurence"][:6].index, x = df_1["news_keyword_occurence"], orientation="h", name="The Guardian News Keywords"), row=1, col=2 ) fig.add_trace( go.Bar(y = df_2["news_keyword_occurence"][:6].index, x = df_2["news_keyword_occurence"], orientation="h", name="New York Times News Keywords"), row=1, col=1 ) fig.update_layout(height = 800, width = 1200, title_text="Side by Side Popular News Keywords") fig.show() fig.write_html("news_keywords.html")
Puedes ver el resultado a continuación.
Para interactuar con el gráfico en vivo, haga clic en aquí.
En la siguiente sección, encontrará dos muestras de subparcelas diferentes para comparar los n-gramas de los sitios web de noticias.
10. Crea tramas secundarias para comparar fuentes de noticias
Use el bloque de código a continuación para colocar los n-gramas más populares de las fuentes de noticias de los títulos de las noticias en una trama secundaria.
import matplotlib.pyplot as plt import pandas as pd df1 = ngram_extractor(df_bbc) df2 = ngram_extractor(df_skynews) df3 = ngram_extractor(df_dailymail) df4 = ngram_extractor(df_guardian) df5 = ngram_extractor(df_nyt) df6 = ngram_extractor(df_cnn) nrow=3 ncol=2 df_list = [df1 ,df2, df3, df4, df5, df6] #df6 titles = ["BBC News Trigrams", "Skynews Trigrams", "Dailymail Trigrams", "The Guardian Trigrams", "New York Times Trigrams", "CNN News Ngrams"] fig, axes = plt.subplots(nrow, ncol, figsize=(25,32)) count=0 i = 0 for r in range(nrow): for c in range(ncol): (df_list[count].plot.barh(ax = axes[r,c], figsize = (40, 28), title = titles[i], fontsize = 10, legend = False, xlabel = "Trigrams", ylabel = "Count")) count+=1 i += 1
Puedes ver el resultado a continuación.
La visualización de datos de ejemplo anterior es completamente estática y no proporciona ninguna interactividad.
Últimamente, Elias Dabascreador de Advertools, ha compartido un nuevo script para tomar el conteo de artículos, n-grams y sus conteos de las fuentes de noticias.
Cheque aquí para obtener un tablero de datos mejor, más detallado e interactivo.
El ejemplo anterior es de Elias Dabbas, y demuestra cómo tomar el recuento total de artículos, las palabras más frecuentes y los n-gramas de los sitios web de noticias de forma interactiva.
Reflexiones finales sobre el análisis del mapa del sitio de noticias con Python
Este tutorial fue diseñado para proporcionar una sesión educativa de codificación de Python para tomar las palabras clave, n-gramas, patrones de frases, idiomas y otros tipos de información relacionada con SEO de sitios web de noticias.
El SEO de noticias depende en gran medida de los reflejos rápidos y la creación de artículos siempre activos.
El seguimiento de los ángulos y métodos de sus competidores para tapar un tema muestra cómo los competidores tienen reflejos rápidos para las tendencias de búsqueda.
Sería mejor crear un Panel de tendencias de Google y un Rastreador de Ngram de fuentes de noticias para un análisis SEO de noticias comparativo y complementario.
En este artículo, de vez en cuando, he puesto funciones personalizadas o bucles for avanzados y, a veces, he simplificado las cosas.
Los principiantes y los profesionales avanzados de Python pueden beneficiarse de él para mejorar sus metodologías de seguimiento, generación de informes y análisis para el SEO de noticias y mucho más.
Más recursos:
Imagen destacada: BestForBest/Shutterstock
Consultar el artículo en la publicación original