Partiamo subito col dire che la versione 20 porta moltissime novità ma la più potente in assoluto è quella di poter eseguire qualsiasi codice JS personalizzato.
Ma andiamo con calma!
Snippet JavaScript personalizzati
Come detto in apertura questa è la funzionalità più importante perchè permette di eseguire qualsiasi codice Javascript personalizzato. Questo significa che andando su “Configurazione > Personalizzato > JavaScript personalizzato” si possono impostare dei propri JS da far eseguire.
Se non si è pratici di Javascript, Screaming Frog mette a disposizione già delle librerie precompilate per eseguire JS per fare operazioni in maniera massiva.
Nello screen sotto potete vedere una parte delle possibilità.
Ovviamente c’è la possibilità di definire lato utente (nel tab “User”) i propri script da riutilizzare ogni volta che ci sarà bisogno.
ALERT: Dovrai impostare la modalità di rendering JavaScript (‘Config > Spider > Rendering’) prima della scansione e i risultati verranno visualizzati nella nuova scheda JavaScript personalizzato altrimenti non funzionerà
Script per creare Title
Ho modificato leggermente lo script per estrarre gli ALT Text in modo che possa fornirvi dei Title per le vostre pagine. Testato e funzionante.
const OPENAI_API_KEY = 'your-Key';
function chatGptRequest(imgUrl) {
const postData = {
"model": "gpt-4-vision-preview",
"messages": [
{
role: "user",
content: [
{
"type": "text",
"text": "you are an SEO expert. For each page provide a Title that must not exceed 60 characters. Take inspiration from the content of the page to provide a Title that is comprehensive. Under no circumstances can you exceed 60 characters!"
},
{
"type": "html_text_url",
"html_text_url": { "url": `${imgUrl}` }
}
]
}
],
"max_tokens": 300
};
const fetchOptions = {
method: 'POST',
headers: {
'Authorization': `Bearer ${OPENAI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify(postData)
};
return fetch('https://api.openai.com/v1/chat/completions', fetchOptions)
.then(response => {
if (!response.ok) {
return response.text().then(text => {throw new Error(text)});
}
return response.json();
})
.then(data => data.choices[0].message.content.trim());
}
const pageUrl = window.location.href;
return chatGptRequest(pageUrl)
.then(title => seoSpider.data(title))
.catch(error => seoSpider.error(error));
Usabilità mobile
è stato aggiunto anche un nuovo tab che serve per verificare l’usabilità mobile su larga scala tramite l’integrazione di Lighthouse
A mio avviso non cambia molto da quanto avveniva in precedenza ma adesso nella nuovo tab avrete informazioni come:
- viewport not set
- tap target size
- content not sized correctly
- illegible font sizes
- Contains unsupported plugins
- Mobile alternate links
A proposito dell’ultimo punto, è stato aggiunta anche la possibilità di scansionare le versioni alternative mobile tramite Mobile Alternative
Analisi degli N-grammi
Altra importantissima novità è l’analisi della frequenza delle frasi utilizzando l’analisi n-grammo tra le pagine di una scansione o in modo aggregato su una selezione di pagine di un sito web.
ALERT: Per abilitare questa funzionalità, ‘Memorizza HTML/Memorizza HTML renderizzato’ deve essere abilitato in ‘Config > Spider > Estrazione’. Gli N-grammi possono quindi essere visualizzati nella scheda N-grammi inferiore .
Fonti
Le due fonti principali sono: