Un rank tracker è lo strumento SEO ad alto valore più semplice che puoi costruire: interroga Google per una keyword, trova il tuo dominio, registra la posizione, ripeti ogni giorno. Eccone uno completo in Python usando serp.cheap.
1. Trova la tua posizione
import requests
def get_rank(keyword, domain, gl="us"):
r = requests.post(
"https://api.serp.cheap/v1/search",
headers={"X-API-Key": "YOUR_KEY"},
json={"q": keyword, "gl": gl},
timeout=30,
)
r.raise_for_status()
for result in r.json()["organic"]:
if domain.lower() in result["link"].lower():
return result["position"]
return None # not in the results
print(get_rank("project management software", "asana.com"))
2. Salva lo storico in SQLite
import sqlite3, datetime
db = sqlite3.connect("ranks.db")
db.execute("""CREATE TABLE IF NOT EXISTS ranks
(date TEXT, keyword TEXT, domain TEXT, position INTEGER)""")
def record(keyword, domain, gl="us"):
pos = get_rank(keyword, domain, gl)
db.execute("INSERT INTO ranks VALUES (?,?,?,?)",
(datetime.date.today().isoformat(), keyword, domain, pos))
db.commit()
return pos
3. Traccia una lista ogni giorno
KEYWORDS = ["project management software", "best crm", "time tracking app"]
DOMAIN = "yoursite.com"
for kw in KEYWORDS:
pos = record(kw, DOMAIN)
print(f"{kw}: #{pos}")
Pianificalo con cron (0 7 * * *) o GitHub Actions per uno snapshot giornaliero.
4. Il costo
Ogni controllo di keyword è una richiesta. 100 keyword/giorno ≈ $0.06/giorno fresca — e i controlli ripetuti colpiscono la cache a metà prezzo. Confrontalo con i rank tracker in hosting che fanno pagare $20–$100+/mese.