I migliori raschietti per porte in vetro: Bright Data, Oxylabs e Decodo
Per confrontare l'efficacia con cui diversi strumenti gestiscono i CAPTCHA , le schermate di accesso e i frequenti cambiamenti di layout di Glassdoor , abbiamo testato 5 dei principali scraper di dati web su 2.500 richieste, monitorando il tasso di successo, il tempo di completamento e la copertura dei metadati di ciascun fornitore.
Risultati del benchmark di scraping di Glassdoor
Per maggiori dettagli sul nostro processo di test, potete consultare la nostra metodologia di benchmarking .
Formato di output e opzioni di prova gratuita per gli scraper di Glassdoor
Campi dati di Glassdoor che è possibile estrarre
Bright Data è stato l'unico fornitore a restituire JSON strutturato da Glassdoor con 19 campi per ogni annuncio di lavoro.
Visualizza i campi dati restituiti per una singola pagina di offerta di lavoro Glassdoor da Bright Data, raggruppati in categorie:
Le 5 migliori API per lo scraping di Glassdoor
Bright Data ha primeggiato nel benchmark di Glassdoor con un tasso di successo del 100%. Utilizza la sua API dedicata al dataset di Glassdoor.
Lo scraper di Glassdoor è disponibile sia tramite l'API Scraper che tramite un'interfaccia senza codice e, oltre agli annunci di lavoro, offre anche scraper dedicati per i dati di panoramica aziendale e le recensioni aziendali.
Ottieni il 25% di sconto sulle API di web scraping
Visita il sito webBright Data
Oxylabs non è riuscito a estrarre alcun dato da Glassdoor. Delle 500 richieste:
- 260 ha restituito HTTP 200 con HTML vuoto/non analizzabile
- 240 ha restituito HTTP 408 (timeout dell'endpoint in tempo reale su pagine con molto codice JavaScript)
Abbiamo inviato gli URL di Glassdoor all'API Web Scraper di Oxylabs utilizzando la sorgente universale per la rotazione IP, l'esecuzione di JavaScript e l'elusione del rilevamento dei bot.
Ottieni 2.000 crediti di scraping gratuiti
Visita il sito web Decodo non ha restituito dati estraibili da Glassdoor. Gli URL di Glassdoor sono stati elaborati tramite l'API Web Scraper di Decodo con headless: html e proxy_pool: premium . 360 delle 500 richieste hanno restituito HTTP 400 e le restanti 140 hanno restituito HTTP 200 ma senza contenuto di lavoro estraibile. Il tempo medio di completamento prima del fallimento è stato di 117 secondi.
Applica il codice SCREEP30 per ottenere uno sconto del 30%
Visita il sito webZyte ha eguagliato il tasso di successo del 100% di Bright Data su Glassdoor con il tempo di completamento medio più veloce di 16 secondi. L'API Extract di Zyte ha elaborato gli URL di Glassdoor con il rendering JavaScript abilitato tramite un browser headless.
Nimble ha raggiunto un tasso di successo del 79% su Glassdoor con un tempo medio di completamento di 30 secondi. L'estrazione da Glassdoor è stata eseguita tramite l'API Web Extract di Nimble configurata con rendering del browser e driver vx10. Circa una pagina su cinque non ha visualizzato gli elementi DOM job-detail all'interno della finestra di test, risultando quindi non validi secondo la nostra validazione CSS-selector.
Politiche e rischi di Glassdoor contro lo scraping
I termini di utilizzo di Glassdoor stabiliscono esplicitamente che non è consentito 1 :
- Estrarre, rimuovere o analizzare dati dalla piattaforma.
- È vietato utilizzare robot, spider, scraper o altri mezzi automatizzati per accedere alla piattaforma per qualsiasi scopo senza esplicita autorizzazione scritta.
- Aggirare o eludere qualsiasi misura utilizzata per impedire o limitare l'accesso al sito (ad esempio, robots.txt, blocchi IP o CAPTCHA).
metodologia di benchmark per lo scraping di Glassdoor
Abbiamo confrontato le prestazioni di 5 provider di web scraping per l'estrazione di annunci di lavoro da Glassdoor, utilizzando per ciascun provider lo stesso elenco di 500 URL di annunci di lavoro. Le richieste sono state inviate in sequenza con una pausa di 2 secondi tra una e l'altra, per un totale di 2.500 esecuzioni.
Fornitori e integrazione
Bright Data è stato eseguito tramite la sua API Glassdoor Dataset appositamente creata, che fornisce JSON analizzato.
Oxylabs è stato eseguito tramite la sua API Web Scraper con source: universal , restituendo HTML renderizzato.
Decodo è stato eseguito tramite la sua API Web Scraper impostata su headless: html con proxy_pool: premium , restituendo anche HTML renderizzato.
Nimble è stato eseguito tramite la sua API Web Extract configurata con render: true e driver: vx10 , producendo HTML renderizzato.
Zyte è stato eseguito tramite la sua API Extract con browserHtml: true , producendo nuovamente HTML renderizzato.
Quando la risposta era HTML, l'abbiamo elaborata tramite selettori CSS locali mirati agli elementi job-detail di Glassdoor come h1[id^="jd-job-title-"] , .EmployerProfile_employerNameHeading__bXBYr h4 , e .JobDetails_badgeStyle__xaoxT[data-test="location"] .
Timeout e limitazione della velocità
Le richieste asincrone avevano un limite massimo di 10 minuti per l'esecuzione. Se un provider restituiva HTTP 429, attendevamo 30 secondi e riprovavamo fino a 3 volte; qualsiasi tentativo successivo veniva registrato come errore per l'URL.
Regole di convalida
Abbiamo effettuato tre controlli per ogni richiesta.
Per l'invio, il provider doveva restituire un codice HTTP compreso tra 200 e 399, oppure 404. Per l'esecuzione, i job asincroni (solo Bright Data in questo caso) dovevano terminare prima del timeout senza errori; i provider sincroni gestivano automaticamente questo passaggio. Per la convalida, la risposta doveva mostrare job_title o company_name come stringa non vuota. Il JSON analizzato da Bright Data forniva direttamente questo dato; per le risposte HTML ci siamo basati sulla corrispondenza dei selettori CSS.
Abbiamo inoltre accettato come validi i rilevamenti 404, sia tramite codice HTTP, contenuto del corpo "pagina non trovata" o segnale di "pagina morta" specifico del provider, poiché il provider aveva correttamente segnalato un'inserzione mancante.
Le risposte vuote senza errori venivano considerate attendibili e riesaminate alla fine: se un altro fornitore aveva recuperato dati reali relativi a un'offerta di lavoro dallo stesso URL, la risposta vuota veniva riclassificata come un errore. Questa inversione di rotta non si applicava ai rilevamenti di errore 404, che venivano mantenuti attendibili a meno che i dati reali di un altro fornitore sullo stesso URL non li contraddicessero.
Un'esecuzione veniva considerata pienamente riuscita solo quando l'invio, l'esecuzione e la convalida risultavano tutti positivi.
Metriche misurate
Il tasso di successo della convalida indica quanti URL hanno superato tutti e tre i controlli.
Il tempo di completamento end-to-end è il tempo effettivo che intercorre tra l'invio della richiesta e la ricezione della risposta, espresso in secondi. Per l'API del dataset asincrono di Bright Data, include la finestra di polling fino al completamento dell'operazione.
I campi metadati disponibili, per i provider che restituiscono JSON strutturato, sono l'unione dei nomi di campo univoci presenti in ogni risposta. Per i provider HTML, il valore riflette l'insieme fisso di cinque selettori CSS che abbiamo utilizzato.
FAQ
I dati di Glassdoor sono utili per il benchmarking salariale, l'analisi competitiva delle tendenze di assunzione, il monitoraggio dell'employer branding, le ricerche di mercato del talento e l'alimentazione delle piattaforme di aggregazione di offerte di lavoro. Le aziende spesso tengono traccia delle recensioni dei concorrenti, delle fasce salariali nei vari settori e delle aziende che assumono per ruoli simili, al fine di definire la propria strategia.
Glassdoor utilizza CAPTCHA, sistemi di accesso tramite login, contenuti renderizzati con JavaScript e frequenti modifiche al layout. Le pagine spesso mostrano richieste di login prima di visualizzare i dati completi e la struttura HTML sottostante cambia regolarmente, rendendo inefficaci gli scraper basati su selettori. Queste protezioni sono il motivo per cui alcuni dei provider inclusi in questo benchmark non sono stati in grado di estrarre dati senza un'infrastruttura specializzata.
Sii il primo a commentare
Il tuo indirizzo email non verrà pubblicato. Tutti i campi sono obbligatori.