EQVPS

VPS cho web scraping: thiết lập, chọn kích cỡ, và các giới hạn trung thực

6 thg 7, 2026 · 5 phút đọc · EQVPS Team

Một scraper trên laptop của bạn ổn cho tới khi bạn đóng nó giữa một lần chạy, IP nhà bạn bị giới hạn tần suất, hoặc bạn muốn cùng job chạy mỗi giờ dù bạn thức hay không. Chuyển nó tới một VPS sửa cả ba: nó ở lại lên 24/7, nó không đốt danh tiếng IP nhà bạn, và cron hoặc một systemd timer chạy nó theo lịch mà không cần bạn. Đây là cách thiết lập điều đó, bạn thực sự cần bao nhiêu máy chủ, và các phần hầu hết các hướng dẫn lặng lẽ bỏ qua.

Vì sao một VPS đánh bại máy của bạn cho việc này

Stack, và mỗi phần cần gì

Hai hạng cân rất khác nhau, và chọn sai gói phí tiền hoặc bỏ đói job:

Quy tắc ngón tay cái: mã của bạn gần như không bao giờ là nút thắt cổ chai — Chromium mới là. Chọn kích cỡ cho trình duyệt, không phải scraper.

Lập lịch: systemd timer thay cron

cron hoạt động, nhưng một systemd timer là mặc định tốt hơn trên một máy chủ bạn bảo trì: log qua journalctl, bắt kịp nếu cỗ máy đã down, và trạng thái theo-từng-lần-chạy kiểm tra được. Một thiết lập tối thiểu:

# /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   # xem các lần chạy

Persistent=true là điều cron không thể làm: nếu máy chủ tắt lúc giờ chạy, job bắn một lần lúc boot thay vì lặng lẽ bỏ qua.

Kết quả đi đâu

Giữ nó đơn giản và khớp khối lượng: SQLite cho dữ liệu có cấu trúc bạn sẽ truy vấn (một tập tin, không thiết lập), CSV cho các bản dump dạng bảng nhanh, hoặc một object store tương thích S3 khi kết quả vượt quá cỗ máy hoặc bạn muốn chúng ngoài-máy-chủ. Xoay các log của bạn (logrotate hoặc các giới hạn journald) để một scraper nhiều lời không dần lấp đĩa.

Phần trung thực: IP egress và danh tiếng

Đây là chi tiết quyết định liệu scraper của bạn hoạt động một tuần hay bị chặn ngày đầu.

Trên một gói NAT, lưu lượng đi ra chia sẻ một IP egress với các khách hàng khác. Danh tiếng của IP đó được chia sẻ — một máy bên cạnh scraping cùng mục tiêu có thể khiến địa chỉ bị giới hạn tần suất trước khi bạn gửi một yêu cầu. Ổn cho scraping nhẹ, thỉnh thoảng; một trách nhiệm ở quy mô.

Một IP riêng cho bạn danh tiếng egress của riêng bạn — không hành vi của ai khác ảnh hưởng nó. Nhưng nó cắt cả hai chiều: scraping hung hãn đốt IP sạch của chính bạn, và một khi một mục tiêu chặn nó, nó bị chặn. Một IP riêng là kiểm soát, không phải miễn dịch.

Ở quy mô thật, bạn cần các hồ proxy bên ngoài. Không IP đơn nào — dùng chung hay riêng — có thể trải tải qua nhiều địa chỉ, vốn là cái scraping nghiêm túc chống lại các mục tiêu giới hạn-tần-suất-theo-IP đòi hỏi. Proxy là một lớp chung, bên thứ ba bạn thêm lên trên; VPS chạy scraper, hồ proxy cung cấp các địa chỉ. Đừng trông đợi một IP máy chủ làm việc của một hồ proxy.

Đạo đức và AUP — không phải tùy chọn

Scraping sống trong một vùng xám pháp lý và đạo đức, nên hãy nhìn rõ:

Kết luận

Một VPS là ngôi nhà đúng cho một scraper: luôn-bật, theo lịch, và ngoài IP nhà bạn. Khớp gói với stack — Nano $3 cho httpx, Micro $5 đến Small $8 cho Playwright — lập lịch với một systemd timer, và trung thực về các IP: egress dùng chung chia sẻ danh tiếng, một IP riêng là của bạn để xây hoặc đốt, và quy mô thật nghĩa là các hồ proxy. Khóa cỗ máy lại trước với danh sách kiểm tra bảo mật VPS-mới, chọn kích cỡ đúng dùng hướng dẫn chọn kích cỡ VPS, và nếu quyền riêng tư thanh-toán-không-thẻ quan trọng, phân tích VPS ẩn danh là phiên bản trung thực. Scrape có trách nhiệm — AUP là thật.


Sẵn sàng scrape? Một gói Micro là một khởi đầu vững; các cuộc thu thập đồng thời lớn tốt hơn trên Small.

FAQ

Tôi cần thông số VPS gì cho web scraping?

Tùy stack. Một scraper HTTP thuần (httpx/requests gọi các API hoặc HTML tĩnh) nhẹ — một Nano $3 với 1 GB là dư dả. Khoảnh khắc bạn cần một trình duyệt thật cho các trang nặng JavaScript, Playwright với Chromium headless muốn 2–4 GB: một Micro $5 cho một hai browser context, một Small $8 nếu bạn chạy vài cái song song. Chromium là kẻ ngốn RAM, không phải mã của bạn.

Tôi có thể scrape từ IP của chính máy chủ, hay cần proxy?

Cho scraping khối lượng thấp, cư xử tốt của các trang cho phép nó, IP của máy chủ là ổn. Ở quy mô, hoặc chống lại các trang giới hạn tần suất theo IP, bạn sẽ cần một hồ proxy bên ngoài — một IP (dùng chung hay riêng) không thể trải tải, và đập từ một địa chỉ đơn khiến nó bị chặn nhanh. Một IP riêng cho bạn một danh tiếng sạch bạn kiểm soát; proxy cho bạn nhiều.

cron hay systemd timer cho các cuộc scrape theo lịch?

Một systemd timer, trong gần như mọi trường hợp. Khác cron nó cho bạn ghi log đúng qua journalctl, thứ tự phụ thuộc, tự bắt kịp nếu cỗ máy đã down, và trạng thái theo-từng-lần-chạy bạn có thể kiểm tra. cron vẫn hoạt động cho các job cực đơn giản, nhưng một timer là mặc định tốt hơn trên một máy chủ bạn thực sự bảo trì.

Web scraping có được phép trên VPS không?

Scraping hợp pháp, tôn trọng — có. Scraping hung hãn bỏ qua các giới hạn tần suất hoặc robots.txt, hoặc dẫn tới đập một mục tiêu tới mức từ chối dịch vụ, là một vi phạm sử dụng hợp lý và khiến dịch vụ bị chấm dứt. Scrape cái bạn được phép, tự điều tiết, và đừng biến một scraper thành một cuộc tấn công.

← Quay lại blogXem gói & giá →

Bình luận

Chưa có bình luận nào. Hãy là người đầu tiên.

Để lại bình luận

Bình luận được kiểm duyệt trước khi hiển thị.