Una solución Python
Puede usar Scrapy que hará que la mayor parte del trabajo sea para usted. Entonces solo necesitaría usar Counter()
para obtener las palabras principales (si las busca) para los conteos de frecuencia).
También puedes usar un enfoque de más bajo nivel con Beautiful Soup para obtener las 5 mejores palabras:
# coding=utf-8
import requests
import collections
from bs4 import BeautifulSoup
thesite = requests.get("http://www.lemonde.fr").text
soup = BeautifulSoup(thesite, 'html.parser')
thewords = soup.get_text().split()
print(collections.Counter(thewords).most_common(5))
Dado que la salida es
[('de', 223), ('la', 154), (':', 123), ('{', 115), ('à', 84)]
puede ver la configuración de la longitud mínima de una "palabra" (¿3 quizás?)
ACTUALIZACIÓN : el código para una lista ordenada de las palabras más comunes con 3 o más letras
# coding=utf-8
import requests
import collections
from bs4 import BeautifulSoup
import operator
thesite = requests.get("http://www.lemonde.fr").text
soup = BeautifulSoup(thesite, 'html.parser')
thewords = soup.get_text().split()
# keep only words over 3 chars
thewords = {w: f for w, f in collections.Counter(thewords).items() if len(w) > 3}
topwords = sorted(thewords.items(), key=operator.itemgetter(1), reverse=True)
print(topwords)