GIẢI ĐẶC BIỆT TỪ ỨNG DỤNG CYBERYOZH.

GIẢI ĐẶC BIỆT TỪ ỨNG DỤNG CYBERYOZH.

Giành cơ hội nhận MacBook của Apple, 2.000 đô la, iPad và hàng loạt giải thưởng hấp dẫn khác!

CyberYozh Open Scraper: Hướng dẫn chính thức

CyberYozh có công cụ scraping miễn phí và mã nguồn mở của riêng mình: Open Scraper. Nó có sẵn trên GitHub, cài đặt bằng Docker trong khoảng 20 phút, triển khai trên localhost và có thể truy cập qua bất kỳ trình duyệt web nào. Chỉ cần kiến thức lập trình tối thiểu, vì Open Scraper bao gồm các đoạn mã được định nghĩa sẵn cho các thao tác scraping, crawling và quản lý phiên, và bạn chỉ cần xác định proxy và trang web mục tiêu.

💡

Đừng lãng phí thời gian và kiểm tra Open Scraper trên GitHub ngay bây giờ.

Chuẩn bị Open Scraper: Chọn proxy

Trước khi bắt đầu scraping, điều quan trọng là chọn đúng loại proxy.

Đăng ký CyberYozh ngay nếu bạn chưa có tài khoản. Sau đó, hãy chọn proxy tốt nhất cho công việc của bạn.

Proxy dân cư: Scraping giá, huấn luyện AI và hầu hết các tác vụ

Proxy dân cư xoay vòng là lựa chọn phổ biến nhất cho scraping và tự động hóa quy mô lớn. Chúng lấy từ các nhóm IP khổng lồ của các địa chỉ nhà thực tế trên toàn thế giới, khiến mỗi yêu cầu có vẻ như đến từ một người dùng thực khác nhau. Điều này khiến chúng lý tưởng cho:

  • Giám sát giá thương mại điện tử

  • Thu thập tập dữ liệu AI/ML

  • Thông tin đối thủ cạnh tranh và thương hiệu 

  • Xác minh quảng cáo và nghiên cứu thị trường

🏠

Proxy dân cư tĩnh thường không được sử dụng cho scraping. Chúng cung cấp một địa chỉ IP dài hạn, cô lập, duy nhất cho các hoạt động như quản lý hồ sơ đơn lẻ. Trong một số trường hợp, có thể sử dụng nhiều IP tĩnh, với mỗi phiên được gán cho một IP duy nhất.

Proxy di động: Scraping mạng xã hội độ chính xác cao

Proxy di động có điểm tin cậy cao nhất và được tối ưu hóa cho các ứng dụng ưu tiên di động, khiến chúng trở thành lựa chọn chính cho các ứng dụng như Instagram và TikTok. Chúng định tuyến lưu lượng qua mạng nhà mạng LTE/5G thực tế, khiến chúng không thể phân biệt với người dùng điện thoại thông minh. Sử dụng chúng cho:

  • Scraping dữ liệu mạng xã hội

  • Phân tích người có ảnh hưởng và khán giả

  • Nền tảng dựa trên ứng dụng

📚

Xem so sánh proxy di động và proxy dân cư để biết phân tích đầy đủ.

Proxy trung tâm dữ liệu: Scraping dữ liệu mở và kiểm thử

Proxy trung tâm dữ liệu rất nhanh nhưng được liên kết với lưu lượng không phải dân cư, giống bot, vì vậy chúng bị chặn bởi nhiều nền tảng được bảo vệ. Sử dụng chúng cho:

  • Scraping cơ sở dữ liệu mở

  • Kiểm thử và phát triển  

📚

Đọc chính xác proxy trung tâm dữ liệu khác với proxy dân cư như thế nào và khi nào nên sử dụng từng loại.

Tải xuống và cài đặt Open Scraper với Docker

Như đã đề cập, Open Scraper có thể được cài đặt trong vòng chưa đầy 20 phút. Nó yêu cầu Docker và có thể được truy cập qua localhost bằng trình duyệt của bạn, điều này có thể hơi bất thường lúc đầu, nhưng thực ra rất dễ dàng.

CyberYozh có IP Checker: một công cụ đảm bảo chất lượng IP trước khi triển khai. Mặc dù không ai có thể đảm bảo tỷ lệ thành công 100%, chúng ta có thể tối đa hóa nó bằng cách loại bỏ các IP có chất lượng thấp một cách cố ý.

Sử dụng IP Checker và tìm hiểu cách tự động hóa nó trong tài liệu APIcủa chúng tôi.

Cài đặt Docker

Truy cập trang web Docker và tải xuống Docker Desktop cho hệ điều hành của bạn (Windows, macOS hoặc Linux).

Docker downloading

Chạy trình cài đặt và làm theo các bước trên màn hình. Docker Desktop miễn phí cho mục đích sử dụng cá nhân. Sau khi cài đặt, khởi chạy Docker Desktop và xác nhận nó đang chạy trước khi tiếp tục.

Docker

Tải xuống Open Scraper từ GitHub

Truy cập kho lưu trữ Open Scraper trên GitHub. Nhấp vào nút Code màu xanh lá và chọn Download ZIP

CyberYozh's Open Scraper on GitHub

Hoặc bạn có thể sao chép qua Git:

bash
git clone https://github.com/CyberYozh-data/yozh-scraper

cd yozh-scraper 

Điều hướng vào thư mục trước khi tiến hành bước build.

Đọc thêm về GitHub proxy

Build Open Scraper với Docker

Tạo tệp môi trường và thêm khóa API CyberYozh của bạn:

bash
cp .env.example .env    # create the environment file

# Open .env and set: CYBERYOZH_API_KEY="your_key_here" 

Sau đó build và khởi chạy tất cả các dịch vụ bằng một lệnh duy nhất:

bash
docker compose up --build

Docker sẽ tải xuống tất cả các phụ thuộc và tự động khởi động các container Open Scraper và Open Crawler. Mở Docker để xem chúng đang chạy:

Open Scraper is running in Docker

Truy cập Open Scraper qua bất kỳ trình duyệt nào

Cả hai công cụ hiện đang chạy trên localhost (127.0.0.1) thông qua các cổng cụ thể. Xác minh chúng đang hoạt động bằng cách sử dụng curl:

bash
curl http://localhost:8000/api/v1/health

# {"status":"ok","workers":2}


curl http://localhost:8001/api/v1/health

# {"status":"ok","workers":2,"scraper_reachable":true,...} 

Truy cập tài liệu API tương tác:

Cả hai trang tài liệu đều chứa các script có thể chạy với các tham số đã được định nghĩa trước. Bạn không cần viết thêm bất kỳ mã nào; chỉ cần điền các giá trị mục tiêu của bạn. Điều này có thể được thực hiện dễ dàng bằng lệnh curl , như được trình bày trong phần tiếp theo.

⚙️

Để scraping nâng cao, hãy khám phá hướng dẫn thiết lập Playwrightcấu hình proxy Python.

Sử dụng Open Scraper và Open Crawler

Sau khi thiết lập, bạn có hai giao diện API có thể truy cập qua trình duyệt. Tất cả các thao tác có thể được kích hoạt bằng cách khởi chạy các lệnh API qua GUI (nhấp vào Try it out trên bất kỳ endpoint nào) hoặc bằng cách gửi lệnh curl trực tiếp từ terminal của bạn. Dưới đây là tất cả các thao tác chính.

🔁

Khám phá các chiến lược luân chuyển IP tốt nhất cho các trường hợp sử dụng cụ thể để thiết lập proxy của bạn theo cách tốt nhất.

1. Thêm proxy vào Open Scraper thông qua API key

Mở file .env trong thư mục gốc của dự án và đặt API key CyberYozh của bạn:

plaintext
CYBERYOZH_API_KEY="your_key_here"

Sau đó, trong các script API (hoặc thông qua lệnh curl , như bạn sẽ thấy sau), chỉ định tham số proxy_type để kích hoạt proxy. Giá trị mặc định là none (kết nối trực tiếp):

proxy_type

Đây là gì

res_rotating

Residential luân chuyển — khuyến nghị mặc định

res_static

Residential tĩnh (IP chuyên dụng)

mobile

Di động / LTE, chuyên dụng

mobile_shared

Di động / LTE, pool dùng chung

dc_static

Datacenter tĩnh

none

Kết nối trực tiếp, không proxy

Để sử dụng geotargeting, hãy thêm từ điển proxy_geo vào bất kỳ script nào với các trường sau:

Trường

Kiểu

Mô tả

country_code

string

ISO 3166-1 alpha-2 (ví dụ: ‹US›, ‹GB›)

region

string

Tên vùng/bang

city

string

Tên thành phố (ví dụ: ‹London›)

Đọc thêm về geotargeting và các đặc điểm của nó trong bài viết của CyberYozh.

Tất cả các lệnh crawling và scraping có thể được gửi qua curl từ terminal của bạn hoặc chạy tương tác thông qua các trang tài liệu localhost. Hãy cùng tìm hiểu kỹ hơn.

2. Khởi chạy các hoạt động crawling trên trang web mục tiêu

Sử dụng Create Crawl lệnh POST từ Open Crawler để bắt đầu thu thập dữ liệu toàn bộ trang web.

open-crawler-create

Chỉ định URL gốc, giới hạn phạm vi, tốc độ yêu cầu và loại proxy:

bash
# Submit a crawl
curl -X POST http://localhost:8001/api/v1/crawl \
  -H "Content-Type: application/json" \
  -d '{
    "seed_url": "https://example.com",
    "scope": {
        "mode": "same-domain", 
        "max_depth": 2, 
        "max_pages": 50, 
        "per_domain_rps": 1.0, 
        "per_domain_concurrency": 1
    },
    "scrape_options": {
        "proxy_type": "res_rotating"
    },
    "crawl_proxy": null,
    "enable_scraping": false

  }'

# {"job_id":"crawl_abc123"} 

Các tham số chính cần cấu hình:

  • seed_url cho URL bắt đầu của trang web mục tiêu

  • max_pages / max_depth  cho giới hạn phạm vi để kiểm soát độ rộng và chi phí

  • per_domain_rps cho số yêu cầu mỗi giây; giữ ở mức 1.0 để tránh kích hoạt giới hạn tốc độ

  • proxy_type nên được đặt thành res_rotating cho hầu hết các trường hợp sử dụng

Sau khi khởi chạy, bạn nhận được một job_id (trong ví dụ này, crawl_abc123). Sử dụng nó để giám sát và quản lý quá trình thu thập:

bash
# Poll crawl status
curl http://localhost:8001/api/v1/crawl/crawl_abc123

# Retrieve full results (all visited pages + stats)
curl http://localhost:8001/api/v1/crawl/crawl_abc123/results

# Live event stream (SSE)
curl -N http://localhost:8001/api/v1/crawl/crawl_abc123/events

# Cancel softly (drains in-flight requests)
curl -X DELETE "http://localhost:8001/api/v1/crawl/crawl_abc123?hard=false"

# Cancel hard (aborts all in-flight tasks immediately)
curl -X DELETE "http://localhost:8001/api/v1/crawl/crawl_abc123?hard=true" 

Đọc thêm về công cụ phân tích cú pháp web trong blog CyberYozh.

3. Thu thập và phân tích dữ liệu từ trang web mục tiêu

Để thu thập dữ liệu một trang đơn, sử dụng lệnh Scrape Page của Open Scraper

open-scraper-scrape-page

Với b, quy trình rất đơn giản:

bash
curl -s -X POST http://localhost:8000/api/v1/scrape/page \

  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "proxy_type": "res_rotating"
  }' 

Để thu thập dữ liệu nhiều trang trong một công việc, sử dụng Scrape Pages:

bash
curl -s -X POST http://localhost:8000/api/v1/scrape/pages \
  -H "Content-Type: application/json" \
  -d '{
    "pages": [
      {"url":"https://example.com","proxy_type":"res_rotating"},
      {"url":"https://example.org","proxy_type":"res_rotating"}
    ]
  }' 

Tương tự như thu thập dữ liệu, cả hai lệnh đều trả về một job_id. Sử dụng nó để kiểm tra trạng thái và lấy kết quả:

bash
# Check scrape status
curl -s http://localhost:8000/api/v1/scrape/<your_job_id>


# Fetch scrape results
curl -s http://localhost:8000/api/v1/scrape/<your_job_id>/results 

Để biết cấu hình nâng cao về thử lại và xử lý lỗi trên các scraper dựa trên Python, xem tối ưu hóa thử lại yêu cầu Python.

4. Sử dụng các cài đặt sẵn để thu thập dữ liệu tối ưu

Open Scraper bao gồm các cài đặt sẵn cho các nguồn dữ liệu phổ biến. Thay vì cấu hình bộ chọn thủ công, hãy chọn tên nguồn và truyền tham số cần thiết:

tên

nguồn

tham số

ngôn ngữ

amazon_product

amazon

asin

us, uk, de, fr, jp

amazon_search

amazon

query

us, uk, de

google_search

google

query

us, uk, de, fr, ru, jp

google_shopping

google

query

us, uk, de

ebay_search

ebay

query

us, uk, de

walmart_product

walmart

product_id

us

youtube_video

youtube

video_id

toàn cầu

linkedin_profile

linkedin

username

toàn cầu (cần phiên xác thực)

Để scrape bằng cài đặt sẵn, hãy sử dụng Scrape Preset Page hoặc Scrape Preset Pages lệnh:

bash
curl -X POST http://localhost:8000/api/v1/scrape/preset/page \

  -H 'Content-Type: application/json' \
  -d '{
    "source": "amazon_product",
    "preset_params": {"asin": "B08N5WRWNW"},
    "locale": "us",
    "llm": {"model": "openai/gpt-5.4-mini"}
  }'

# -> {"job_id": "..."}  then GET /api/v1/scrape/<job_id>/results 

Tham số tùy chọn llm cho phép mô hình AI tự sửa lỗi trong quá trình phân tích. Để sử dụng nó, bạn cần thêm khóa API của nhà cung cấp LLM tương ứng (ví dụ: OPENAI_API_KEY) vào tệp .env của bạn cùng với CYBERYOZH_API_KEY.

🤖

Phân tích có hỗ trợ LLM có thể hữu ích cho các cấu trúc trang không nhất quán hoặc động, nơi mà các bộ chọn CSS đơn thuần có thể bỏ sót nội dung.

5. Khởi chạy sticky sessions

Sticky sessions cho phép Open Scraper duy trì trạng thái trình duyệt nhất quán, bao gồm cookies, xác thực và địa chỉ IP, qua nhiều yêu cầu. Sử dụng chúng để scrape sau các tường đăng nhập.

Tạo một session:

bash
curl -X POST http://localhost:8000/api/v1/sessions \

  -H 'content-type: application/json' \
  -d '{"device":"desktop","proxy_type":"res_rotating","ttl_seconds":3600}'

Xác thực session bằng script đăng nhập:

bash
curl -X POST http://localhost:8000/api/v1/sessions/$ID/login \

  -H 'content-type: application/json' \
  -d '{
    "creds":{"email":"tomsmith","password":"SuperSecretPassword!"},
    "script":{
      "steps":[
        # Your target website
        {"op":"goto","url":"https://the-internet.herokuapp.com/login"}, 
        {"op":"fill","selector":"#username","value":"$creds_email"},
        {"op":"fill","selector":"#password","value":"$creds_password"},
        {"op":"click","selector":"button[type=submit]"},
        {"op":"wait_for_selector","selector":".flash.success"}
      ],
      "success_selector":".flash.success"
    }
  }' 

Hoặc inject cookies session trực tiếp:

bash
curl -X POST http://localhost:8000/api/v1/sessions/$ID/cookies \

  -H 'content-type: application/json' \
  -d '{"cookies":[{"name":"sessionid","value":"abc","domain":".example.com","path":"/","expires":1800000000,"httpOnly":true,"secure":true,"sameSite":"Lax"}]}' 

Sau khi session được xác thực, truyền session_id vào bất kỳ lệnh Scrape Page hoặc Scrape Pages tiếp theo để tiếp tục dưới cùng trạng thái đã xác thực.

🍪

Sticky Session là một ngữ cảnh trình duyệt bền vững giữ lại cookies, token xác thực và phân bổ proxy qua nhiều yêu cầu. Rất quan trọng để scrape các nền tảng yêu cầu đăng nhập hoặc duy trì trạng thái chống bot qua các lượt xem trang.

Kết luận: Web scraping và tự động hóa miễn phí

Open Scraper và Open Crawler là các công cụ sẵn sàng sản xuất, miễn phí và mã nguồn mở để scraping, crawling và trích xuất dữ liệu có cấu trúc. Cài đặt chúng bằng Docker trong 20 phút, kết nối proxy CyberYozh của bạn chỉ trong hai dòng cấu hình .env , và chạy tất cả các thao tác qua curl mà không cần viết code.

Câu hỏi thường gặp về Open Scraper của CyberYozh

Công cụ web scraping miễn phí tốt nhất hiện nay là gì?

CyberYozh Open Scraper là lựa chọn mã nguồn mở, miễn phí hàng đầu: không yêu cầu đăng ký, chạy cục bộ qua Docker và tích hợp sẵn tính năng xoay vòng proxy.

CyberYozh Open Scraper có thực sự miễn phí không?

Có, bản thân công cụ hoàn toàn miễn phí và mã nguồn mở. Bạn chỉ trả tiền cho proxy nếu cần chúng để bảo vệ chống cấm hoặc nhắm mục tiêu địa lý.

Những công cụ web scraping mã nguồn mở tốt nhất là gì?

Các lựa chọn phổ biến bao gồm Scrapy, Playwright, Puppeteer và CyberYozh Open Scraper — công cụ độc đáo kết hợp giao diện API sẵn có với hạ tầng proxy tích hợp.

Tôi có cần proxy để scrape web không?

Không phải lúc nào cũng cần, nhưng đối với scraping quy mô lớn hoặc thương mại, dịch vụ proxy scraping web là cần thiết để tránh bị cấm IP và vượt qua giới hạn tốc độ.

Dịch vụ proxy scraping web là gì?

Dịch vụ proxy scraping web định tuyến các yêu cầu scraper của bạn qua một nhóm IP thực, khiến mỗi yêu cầu có vẻ như đến từ một người dùng hợp lệ khác nhau.

Sự khác biệt giữa proxy xoay vòng và proxy tĩnh cho scraping là gì?

Proxy xoay vòng gán một địa chỉ IP mới cho mỗi yêu cầu để cung cấp tính ẩn danh ở quy mô lớn. Proxy tĩnh giữ một IP cố định, phù hợp cho các tác vụ dựa trên phiên hoặc tài khoản cụ thể.

Tôi có thể sử dụng API scraping web miễn phí mà không cần kinh nghiệm lập trình không?

Có. Tài liệu localhost của Open Scraper cung cấp các script API có sẵn: chỉ cần điền URL và loại proxy rồi nhấn chạy. Không cần code tùy chỉnh.

Tôi nên sử dụng loại proxy nào để scrape mạng xã hội?

Proxy di động có điểm tin cậy cao nhất và tốt nhất cho Instagram, TikTok và các nền tảng ưu tiên di động tương tự — những nơi lọc mạnh lưu lượng không phải di động.

Làm thế nào để tránh bị chặn khi scrape web?

Sử dụng proxy dân cư hoặc di động xoay vòng, giới hạn số yêu cầu mỗi giây (per_domain_rps), bật chế độ ẩn danh và xoay vòng header user-agent với mỗi yêu cầu.

Open Scraper có xử lý được các trang render JavaScript không?

Có. Open Scraper được xây dựng trên Playwright, công cụ render đầy đủ phiên trình duyệt bao gồm JavaScript, SPA và nội dung tải động.

Sự khác biệt giữa web scraping và web crawling là gì?

Crawling lập bản đồ và lập chỉ mục các URL trên một trang web; scraping trích xuất dữ liệu có cấu trúc từ các trang đó. Open Scraper bao gồm cả hai công cụ: Open Crawler để khám phá, Open Scraper để trích xuất.

Làm thế nào để thiết lập proxy scraping web cho Open Scraper?

Thêm API key CyberYozh của bạn vào file .env dưới mục CYBERYOZH_API_KEY, sau đó đặt proxy_type thành res_rotating trong bất kỳ lệnh scraping nào. Vậy là xong.