Hoppa till innehåll
AutoValue
28 augusti 2026 · Data Quality

Sommaren då vårt annonsantal kraschade: en dagbok inifrån skraparen

AutoValue Editorial
Sommaren då vårt annonsantal kraschade: en dagbok inifrån skraparen

Jag har oftast en flik öppen som bara visar antal källor. Inget snyggt — inga diagram, inga filter, bara en siffra bredvid vart och ett av de 1 375 sajter vi hämtar annonser från, och en tidsstämpel för när var och en senast checkade in. De flesta dagar är det tråkigt på det sätt som infrastruktur ska vara tråkig. Den här sommaren var det inte det, och jag tror att historien om vad som gick fel är mer användbar för dig, som någon som letar bil, än det mesta av rådgivningen om "hur man köper en begagnad bil" vi skulle kunna skriva istället. Det handlar om vad "livedata" faktiskt betyder när det som matar in den är 1 375 separata webbplatser som inte är dig något skyldiga.

Mitten av juli: siffran jag var stolt över

I mitten av juli hade vi drivit upp källregistret till 1 190 källor över 73 regioner — resultatet av några veckors avstämning av dubbletter och döda länkar som i det tysta hade blåst upp vårt eget antal. Jag minns att jag tänkte att 1 190 verkliga, incheckade källor var något att vara stolt över. Det är väldigt många enskilda återförsäljarsajter, klassificerade annonssidor och auktionsflöden, var och en med sin egen HTML-struktur, sina egna hastighetsbegränsningar, sin egen uppfattning om huruvida en skrapare är en kund eller en attack.

Sedan började en eftersläpningskampanj vi hade kört — att arbeta oss igenom en väntelista på 683 källor som legat uppskjutna i månader, en del blockerade, en del helt enkelt aldrig byggda — landa. Under andra halvan av juli byggdes och kopplades 274 av dem in. Vid månadens slut hade det fungerande antalet stigit till 1 464. Det är den typen av vecka man tar en skärmdump av.

Tidig augusti: 241 källor, borta

Sedan siffran som förstör din vecka: över en natt föll 241 källor in i ett degraderat tillstånd. Inte på grund av något vi gjorde — vårt proxykonto hade förfallit på faktureringssidan, och en enorm andel av vår trafik går via roterande IP-adresser specifikt för att vi inte ska bli blockerade av sajter som hastighetsbegränsar skrapare. Inga proxyservrar, inga nya sidor, inga nya annonser. Källor annonserar inte att de är trasiga; de slutar bara tyst leverera ny data medan deras gamla annonser ligger kvar och ser aktuella ut.

Det här är den del som inte syns i ett annonsantal på någon bilsajt, vår inräknad, om man inte letar aktivt: en "live"-marknadsplats kan ha inaktuella rader liggandes bredvid färska och se identiska ut utifrån. Vi villkorade nya skrapningsutskick på en faktisk hälsokontroll av proxyservrarna så att en död pool inte i det tysta kunde försämra kvaliteten ytterligare, och pausade de delar av schemat som hade gjort det värre. Det är inget glamoröst arbete. Det är den typen av sak som, om man aldrig hör talas om den, betyder att någon gjorde sitt jobb.

En sidokommentar, för den är värd att säga rakt ut: varje sajt som påstår sig ha ett fast, jämnt annonsantal varje enda dag är antingen inte faktiskt live, eller berättar inte för dig om veckor som denna.

Frysningen

Proxyförnyelsen löste det mesta. Vad jag inte förväntade mig var att skraparen själv låste sig några veckor senare — ett dödläge vid nedmontering, arton av nitton arbetartrådar sittande i futex_wait, noll CPU förbrukad, i 75 timmar i sträck. Ingen krasch, ingen felloggning som skrek åt någon. Bara... ingenting hände, medan instrumentpanelen fortsatte visa den senaste lyckade körningen som om den vore aktuell. Vi hade ännu inte installerat en vakthund på just den värden, vilket är den typen av mening man bara skriver efter att det den beskriver redan har hänt en gång.

Vi byggde vakthunden. Vi pausade schemat tills proxyförnyelsen bekräftats stabil, snarare än att riskera att en halvdegraderad skrapning i det tysta ersatte bra rader med dåliga — en skrapad källa får sina annonser ersatta, inte sammanslagna, så en dålig körning misslyckas inte bara med att lägga till data, den kan aktivt radera bra rader och sätta sämre på deras plats. Den asymmetrin är anledningen till att vi hellre kör inaktuellt en dag än kör degraderat.

Var siffran landade

Här är antalet idag, och formen på de sex veckor som tog oss hit:

Vi landade på 1 375 källor över 73 regioner, som matar 1 108 535 liveannonser, med 12 823 för närvarande flaggade som prissatta under sin regionala kohort. Det är omkring 90 färre källor än julitoppen — några av de 241 degraderade kom aldrig helt tillbaka, en handfull var sajter som under tiden hade ändrat sitt anti-bot-förhållningssätt och behövde byggas om snarare än återanslutas. Vi arbetar fortfarande med några av dem.

Vad det här faktiskt är värt för dig

Inget av det här förändrar vilken bil du bör köpa. Men det bör förändra hur du läser varje "livelager"-siffra på vilken bilsajt som helst, inte bara vår. Frankrike ligger just nu i topp i vårt regionala antal med 67 569 annonser, Japan tätt efter med 61 940, och de siffrorna rör sig — inte för att själva begagnatmarknaden svänger så snabbt, utan för att infrastrukturen som bevakar den gör det. En annons som är tre dagar inaktuell för att en källa var degraderad ser exakt likadan ut som en färsk en, om inte plattformen är ärlig om skillnaden.

Vi föredrar att berätta för dig om den 75 timmar långa frysningen framför att låtsas att vår siffra aldrig vacklar. Ett dataset som aldrig erkänner en dålig vecka är ett dataset du bör vara mer misstänksam mot, inte mindre.

Data QualityWEB ScrapingMethodologyTransparencyMarket Data
Dela

Relaterade artiklar