Website được thiết kế tối ưu cho thành viên chính thức. Hãy Đăng nhập hoặc Đăng ký để truy cập đầy đủ nội dung và chức năng. Nội dung bạn cần không thấy trên website, có thể do bạn chưa đăng nhập. Nếu là thành viên của website, bạn cũng có thể yêu cầu trong nhóm Zalo "KSNK" các nội dung bạn quan tâm.

Bước 3. Thêm luồng crawl mới

ICT

Chúng ta đã thực hiện xong luồng thứ nhất:

Bước 1. Lấy danh sách

Bước 2. Lấy từng content theo danh sách. Bước 2* là crawl trong Windows.

Với các trang chống bot phức tạp, hay cần đăng nhập thay vì dùng cookies có thể dùng trình duyệt thật trên Windows thay vì dùng Linux.

Bây giờ chúng ta qua luống crawl khác, luồng này mình ưu tiên dùng Windows và dùng proxy. Đây là cách chắc chắn nhất để khi mới tiếp cận, thời gian ít chúng ta có thể vận dụng ngay (Bước 2*).

Đối với các trang không chống bot mạnh, chỉ cần cookies thay cho đăng nhập, hay không cần đăng nhập thì dùng Linux rất đã (Bước 2).

Nguyên tắc của (các) luồng tiếp theo:

  • Không ảnh hưởng đến luồng crawl trước đó.
  • Tách biệt IP (dùng proxy), Chrome profile nếu như Website nguồn đang crawl trong luồng crawl khác.
  • Đảm bảo các nguyên tắc crawl khác trong bài đầu tiên đã đề cập Crawler, Spider, Scraper

Bước 1. Chuẩn bị môi trường mới (env)

Mở CMD

cd D:\DuAn\DuAnMoi
py -3 -m venv myenv_DuAn2
myenv_DuAn2\Scripts\activate
pip install --upgrade pip
pip install undetected-chromedriver selenium requests pandas

Nếu PowerShell tương tự, kích hoạt: .\myenv_DuAn2\Scripts\Activate.ps1

Nếu dữ liệu tải về của dự án để trên HDD, khuyến cáo để env trên ổ OS (là SSD, NVME) để lâu lâu không bị lag, "khựng" do HDD full load.
 

Bước 2. Tạo file chạy .bat để cô lập biến môi trường

Ví dụ tạo file run_DuAn2.bat đặt cạnh script:

@echo off
SETLOCAL ENABLEEXTENSIONS

REM ---- Kích hoạt venv riêng ----
call "%~dp0myenv_DuAn2\Scripts\activate.bat"

REM ---- Biến môi trường CHỈ cho tiến trình này ----
set USE_PROXY=1
set PROXY_URL=http://[IP máy chủ proxy]:8888
set HEADLESS=1

REM Chrome profile & output tách biệt
set PROFILE_DIR=%LOCALAPPDATA%\Google\Chrome\User Data DuAn2
set PROFILE_NAME=Profile DuAn2
set LOG_FILE=4LayFiles_DuAn2_Windows.log
set OUTPUT_CSV=4LayFiles_DuAn2_Windows-Output.csv
set INPUT_CSV=4LayFiles_DuAn2_Windows-Windows-Input.csv
set SAVE_ROOT=4LayFiles_DuAn2_Windows

REM ---- Chạy script ----
py 4LayFiles_DuAn2-Windows.py

REM ---- Kết thúc, tự động thu hồi biến khi ENDLOCAL ----
ENDLOCAL
 

SETLOCAL đảm bảo mọi biến chỉ tồn tại trong .bat → không ảnh hưởng terminal/luồng khác.

PROFILE_DIR/PROFILE_NAME đã tách riêng nên Chrome không đụng profile các luồng khác.

SAVE_ROOT/OUTPUT_CSV/LOG_FILE cũng tách, tránh ghi đè.

Chạy: chỉ cần double-click vào file run_DuAn2.bat hoặc chạy từ CMD.