EQVPS

VPS til web-scraping: opsætning, dimensionering og ærlige grænser

6. jul. 2026 · 4 min. læsning · EQVPS Team

En scraper på din bærbare er fin, indtil du lukker den midt i en kørsel, din hjemme-IP bliver rate-limited, eller du vil have det samme job til at køre hver time, uanset om du er vågen eller ej. At flytte den til en VPS fikser alle tre: den forbliver oppe 24/7, den brænder ikke din hjemme-IP's omdømme, og cron eller en systemd-timer kører den efter tidsplan uden dig. Her er, hvordan man sætter det op, hvor meget server du faktisk har brug for, og de dele, de fleste guides stille springer over.

Hvorfor en VPS slår din maskine til dette

Stakken, og hvad hver del har brug for

To meget forskellige vægtklasser, og at vælge det forkerte abonnement spilder penge eller udsulter jobbet:

Tommelfingerreglen: din kode er næsten aldrig flaskehalsen — Chromium er. Dimensionér efter browseren, ikke efter scraperen.

Planlægning: systemd-timer frem for cron

cron virker, men en systemd-timer er den bedre standard på en server, du vedligeholder: logs gennem journalctl, indhentning hvis boksen var nede, og inspicerbar per-kørsels-status. En minimal opsætning:

# /etc/systemd/system/scrape.service
[Unit]
Description=Run scraper
[Service]
Type=oneshot
User=scraper
WorkingDirectory=/home/scraper/job
ExecStart=/home/scraper/job/venv/bin/python scrape.py
# /etc/systemd/system/scrape.timer
[Unit]
Description=Hourly scrape
[Timer]
OnCalendar=hourly
Persistent=true
[Install]
WantedBy=timers.target
sudo systemctl enable --now scrape.timer
journalctl -u scrape.service -f   # se kørsler

Persistent=true er den bid, cron ikke kan: hvis serveren var slukket ved kørselstid, affyrer jobbet én gang ved boot i stedet for stille at springe over.

Hvor resultater går

Hold det simpelt og match volumen: SQLite til strukturerede data, du vil forespørge (én fil, nul opsætning), CSV til hurtige tabel-dumps, eller et S3-kompatibelt objektlager, når resultater vokser ud af boksen, eller du vil have dem væk fra serveren. Rotér dine logs (logrotate eller journald-grænser), så en snakkesalig scraper ikke langsomt fylder disken.

Den ærlige del: udgangs-IP og omdømme

Det er detaljen, der afgør, om din scraper virker i en uge eller bliver blokeret på dag ét.

På et NAT-abonnement deler udgående trafik én udgangs-IP med andre kunder. Den IP's omdømme er delt — en nabo, der scraper det samme mål, kan få adressen rate-limited, før du sender en eneste forespørgsel. Fint til let, lejlighedsvis scraping; en risiko ved volumen.

En dedikeret IP giver dig dit eget udgangs-omdømme — ingen andens adfærd påvirker det. Men det skærer begge veje: aggressiv scraping brænder din egen rene IP, og når et mål blokerer den, er den blokeret. En dedikeret IP er kontrol, ikke immunitet.

I reel skala har du brug for eksterne proxy-puljer. Ingen enkelt IP — delt eller dedikeret — kan sprede belastning over mange adresser, hvilket er, hvad seriøs scraping mod IP-rate-limitede mål kræver. Proxier er et generisk, tredjeparts-lag, du tilføjer ovenpå; VPS'en kører scraperen, proxy-puljen leverer adresserne. Forvent ikke, at én server-IP laver en proxy-puljes job.

Etik og AUP'en — ikke valgfrit

Scraping bor i en juridisk og etisk gråzone, så vær klarøjet:

Bundlinjen

En VPS er det rigtige hjem for en scraper: altid-tændt, planlagt og væk fra din hjemme-IP. Match abonnementet til stakken — $3 Nano til httpx, $5 Micro til $8 Small til Playwright — planlæg med en systemd-timer, og vær ærlig om IP'er: delt udgang deler omdømme, en dedikeret IP er din at opbygge eller brænde, og reel skala betyder proxy-puljer. Lås boksen ned først med ny-VPS-sikkerhedstjeklisten, dimensionér den rigtigt ved hjælp af VPS-dimensioneringsguiden, og hvis betal-uden-et-kort-privatliv betyder noget, er den anonyme VPS-opdeling den ærlige version. Scrap ansvarligt — AUP'en er reel.


Klar til at scrape? Et Micro-abonnement er en solid start; store samtidige crawls klarer sig bedre på Small.

FAQ

Hvilke VPS-specifikationer har jeg brug for til web-scraping?

Afhænger af stakken. En almindelig HTTP-scraper (httpx/requests der rammer API'er eller statisk HTML) er let — en $3 Nano med 1 GB er rigeligt. I det øjeblik du har brug for en rigtig browser til JavaScript-tunge sites, vil Playwright med headless Chromium have 2–4 GB: en $5 Micro til en eller to browser-kontekster, en $8 Small hvis du kører flere parallelt. Chromium er RAM-slugeren, ikke din kode.

Kan jeg scrape fra serverens egen IP, eller har jeg brug for proxier?

Til lav-volumen, velopdragen scraping af sites, der tillader det, er serverens IP fin. I stor skala, eller mod sites der rate-limiter efter IP, har du brug for en ekstern proxy-pulje — én IP (delt eller dedikeret) kan ikke sprede belastningen, og at hamre fra en enkelt adresse får den blokeret hurtigt. En dedikeret IP giver dig et rent omdømme, du kontrollerer; proxier giver dig mange.

cron eller systemd-timer til planlagte scrapes?

En systemd-timer, i næsten alle tilfælde. I modsætning til cron giver den dig ordentlig logning via journalctl, afhængighedsrækkefølge, automatisk indhentning hvis boksen var nede, og per-kørsels-status du kan inspicere. cron virker stadig til dødsimple jobs, men en timer er den bedre standard på en server, du faktisk vedligeholder.

Er web-scraping tilladt på VPS'en?

Lovlig, respektfuld scraping — ja. Aggressiv scraping, der ignorerer rate limits eller robots.txt, eller som svarer til at hamre et mål til et denial-of-service, er en overtrædelse af acceptabel brug og får tjenesten termineret. Scrap, hvad du har lov til, sæt dig selv ned, og forvandl ikke en scraper til et angreb.

← Tilbage til blogSe planer & priser →

Kommentarer

Ingen kommentarer endnu. Vær den første.

Skriv en kommentar

Kommentarer modereres, før de vises.