Chuyển tới nội dung
Khóa học SEO tiêu chuẩn
  • Trang chủ
  • Giới thiệu
    • Giới thiệu VietMoz Academy
    • Cơ sở vật chất
    • Hoạt động cộng đồng
  • Chương trình học
    • Lịch tuyển sinh
    • Khóa học SEO tiêu chuẩn
    • Google Marketing
      • Khóa học Adwords Pro Sales
      • Khoá học Google Map Premium
      • Khóa học SEO HCM Special
      • Khóa học GA4 from Zero to Hero
    • Thực hành quảng cáo Facebook
      • Khóa học Winning Facebook Ads
      • Khóa học Facebook Marketing
    • Khoá học kinh doanh thương mại điện tử trên sàn Shopee
    • Marketing tinh gọn
      • Marketing Fundamentals
      • Khoá học MSP – Thực hành xây dựng chiến lược marketing
      • Khoá học Digital Masterclass
      • Khóa học Sale Promotion
  • Blog
    • Tin tức
    • Cách làm SEO
      • SEO Cafe – Tin tức SEO mới nhất
      • Wiki SEO – Thư viện kiến thức quan trọng
      • SEO Guide – Hướng dẫn làm SEO
      • SEO Case Study
      • Resource – Công cụ & Template
    • Blog Marketing
    • Kiến thức Google Adwords
    • Blog Facebook Marketing
    • Blog Content
  • Liên hệ
    • Đăng ký học
    • Hướng dẫn thanh toán
    • Bản đồ đường đi
Mục lục nội dung
1 Hướng dẫn chi tiết kiểm tra lỗi 404 bằng Python
1.1 Bước 1: Chuẩn bị môi trường Python
1.1.1 Cài đặt Python
1.1.2 Cài đặt thư viện requests
1.2 Bước 2: Chọn trình soạn thảo code
1.3 Bước 3: Nhập thư viện cần thiết
1.4 Bước 4: Xác định danh sách URL cần kiểm tra
1.4.1 Trường hợp A: Danh sách URL cố định (nhỏ)
1.4.2 Trường hợp B: Đọc danh sách từ file văn bản (hàng trăm hoặc hàng nghìn URL)
1.4.3 Trường hợp C: Lấy URL từ sitemap XML
1.5 Bước 5: Viết hàm kiểm tra một URL
1.6 Bước 6: Viết hàm chạy kiểm tra hàng loạt
1.6.1 Phương pháp 1: Chạy tuần tự (đơn giản, dành cho danh sách nhỏ)
1.6.2 Phương pháp 2: Chạy đa luồng (nhanh hơn, dành cho danh sách lớn)
1.7 Bước 7: Lưu kết quả vào file CSV
1.8 Bước 8: Chạy script
1.9 Bước 9: Tùy chỉnh script theo mục tiêu SEO
1.9.1 Chỉ lưu URL bị 404
1.9.2 Phát hiện redirect chain và lỗi 5xx
1.9.3 Giới hạn tốc độ request
1.10 Những trường hợp sử dụng phổ biến cho chuyên gia SEO
1.11 Những lưu ý quan trọng khi viết script
1.12 Một số lỗi phổ biến và cách khắc phục
1.13 Mở rộng script với các tính năng nâng cao
1.13.1 Đo thời gian phản hồi của từng URL
1.13.2 Lưu log chi tiết vào file text
1.14 Mẹo tối ưu hiệu năng cho danh sách URL siêu lớn
1.15 Tóm tắt nhanh quy trình viết script
2 Kết luận
Mục lục nội dung
1 Hướng dẫn chi tiết kiểm tra lỗi 404 bằng Python
1.1 Bước 1: Chuẩn bị môi trường Python
1.1.1 Cài đặt Python
1.1.2 Cài đặt thư viện requests
1.2 Bước 2: Chọn trình soạn thảo code
1.3 Bước 3: Nhập thư viện cần thiết
1.4 Bước 4: Xác định danh sách URL cần kiểm tra
1.4.1 Trường hợp A: Danh sách URL cố định (nhỏ)
1.4.2 Trường hợp B: Đọc danh sách từ file văn bản (hàng trăm hoặc hàng nghìn URL)
1.4.3 Trường hợp C: Lấy URL từ sitemap XML
1.5 Bước 5: Viết hàm kiểm tra một URL
1.6 Bước 6: Viết hàm chạy kiểm tra hàng loạt
1.6.1 Phương pháp 1: Chạy tuần tự (đơn giản, dành cho danh sách nhỏ)
1.6.2 Phương pháp 2: Chạy đa luồng (nhanh hơn, dành cho danh sách lớn)
1.7 Bước 7: Lưu kết quả vào file CSV
1.8 Bước 8: Chạy script
1.9 Bước 9: Tùy chỉnh script theo mục tiêu SEO
1.9.1 Chỉ lưu URL bị 404
1.9.2 Phát hiện redirect chain và lỗi 5xx
1.9.3 Giới hạn tốc độ request
1.10 Những trường hợp sử dụng phổ biến cho chuyên gia SEO
1.11 Những lưu ý quan trọng khi viết script
1.12 Một số lỗi phổ biến và cách khắc phục
1.13 Mở rộng script với các tính năng nâng cao
1.13.1 Đo thời gian phản hồi của từng URL
1.13.2 Lưu log chi tiết vào file text
1.14 Mẹo tối ưu hiệu năng cho danh sách URL siêu lớn
1.15 Tóm tắt nhanh quy trình viết script
2 Kết luận

Hướng dẫn viết script Python kiểm tra lỗi 404 hàng loạt

Đăng vào 26/07/2026 bởi Khánh LinhDanh mục: Uncategorized
Mục lục nội dung
1 Hướng dẫn chi tiết kiểm tra lỗi 404 bằng Python
1.1 Bước 1: Chuẩn bị môi trường Python
1.1.1 Cài đặt Python
1.1.2 Cài đặt thư viện requests
1.2 Bước 2: Chọn trình soạn thảo code
1.3 Bước 3: Nhập thư viện cần thiết
1.4 Bước 4: Xác định danh sách URL cần kiểm tra
1.4.1 Trường hợp A: Danh sách URL cố định (nhỏ)
1.4.2 Trường hợp B: Đọc danh sách từ file văn bản (hàng trăm hoặc hàng nghìn URL)
1.4.3 Trường hợp C: Lấy URL từ sitemap XML
1.5 Bước 5: Viết hàm kiểm tra một URL
1.6 Bước 6: Viết hàm chạy kiểm tra hàng loạt
1.6.1 Phương pháp 1: Chạy tuần tự (đơn giản, dành cho danh sách nhỏ)
1.6.2 Phương pháp 2: Chạy đa luồng (nhanh hơn, dành cho danh sách lớn)
1.7 Bước 7: Lưu kết quả vào file CSV
1.8 Bước 8: Chạy script
1.9 Bước 9: Tùy chỉnh script theo mục tiêu SEO
1.9.1 Chỉ lưu URL bị 404
1.9.2 Phát hiện redirect chain và lỗi 5xx
1.9.3 Giới hạn tốc độ request
1.10 Những trường hợp sử dụng phổ biến cho chuyên gia SEO
1.11 Những lưu ý quan trọng khi viết script
1.12 Một số lỗi phổ biến và cách khắc phục
1.13 Mở rộng script với các tính năng nâng cao
1.13.1 Đo thời gian phản hồi của từng URL
1.13.2 Lưu log chi tiết vào file text
1.14 Mẹo tối ưu hiệu năng cho danh sách URL siêu lớn
1.15 Tóm tắt nhanh quy trình viết script
2 Kết luận
Hướng dẫn viết script Python kiểm tra lỗi 404 hàng loạt

Hướng dẫn viết script Python kiểm tra lỗi 404 hàng loạt

Tối ưu hóa quy trình kiểm tra lỗi 404 bằng Python cho chuyên gia SEO

Kiểm tra lỗi 404 hàng loạt là nhiệm vụ quan trọng trong audit kỹ thuật SEO. Khi website của bạn có hàng trăm hoặc hàng nghìn đường dẫn, việc kiểm tra thủ công từng liên kết sẽ tốn rất nhiều thời gian. Script Python với thư viện requests cung cấp giải pháp tự động hóa, giúp bạn kiểm tra trạng thái HTTP của nhiều URL cùng một lúc, phát hiện những trang trả về mã lỗi 404, redirect 301, hoặc các vấn đề server khác một cách nhanh chóng và chính xác. Bạn sẽ học cách viết script từ cơ bản đến nâng cao, từ chuẩn bị môi trường cho đến tối ưu hóa hiệu năng với xử lý đa luồng.

Hướng dẫn chi tiết kiểm tra lỗi 404 bằng Python

Bước 1: Chuẩn bị môi trường Python

Trước khi viết bất kỳ dòng code nào, bạn cần cài đặt Python và thư viện requests. Đây là nền tảng cho mọi script kiểm tra lỗi 404 bằng Python mà bạn sẽ xây dựng sau này.

Cài đặt Python

Truy cập trang chính thức Python.org để tải phiên bản mới nhất phù hợp với hệ điều hành của bạn (Windows, macOS hoặc Linux). Trong quá trình cài đặt trên Windows, hãy chắc chắn tích chọn ô “Add Python to PATH” để có thể gọi Python từ Terminal hoặc Command Prompt mà không cần chỉ định đường dẫn đầy đủ.

Sau khi cài xong, mở Terminal hoặc Command Prompt và gõ lệnh python version hoặc py version để kiểm tra xem Python đã được cài đặt đúng và nhận diện bởi hệ thống chưa.

Cài đặt thư viện requests

Mở Terminal hoặc Command Prompt và gõ lệnh:

pip install requests

Thư viện requests là công cụ chính giúp bạn gửi yêu cầu HTTP và lấy mã trạng thái từ máy chủ. Nó cung cấp cách đơn giản nhất để truy cập property status_code, là chìa khóa để phát hiện lỗi 404 hay các mã HTTP khác.

Lưu ý quan trọng: Nếu gặp lỗi quyền hạn trên Linux hoặc macOS, hãy thêm cờ user vào lệnh: pip install user requests

Bước 2: Chọn trình soạn thảo code

Để viết script Python kiểm tra lỗi 404 hàng loạt, bạn cần một trình soạn thảo code tốt. Có nhiều lựa chọn, nhưng tôi khuyên dùng VS Code vì nó nhẹ, hỗ trợ tô màu cú pháp Python, và có các tính năng hữu ích cho lập trình.

VS Code (khuyên nghị): Tải từ code.visualstudio.com, cài đặt, rồi mở File > New Text File, lưu với tên check_404.py
Các lựa chọn khác: Notepad++, Sublime Text, Atom, hoặc Jupyter Notebook đều có thể dùng. Quan trọng là lưu file với đuôi .py để Python nhận diện.
Mẹo: Đặt tên file không chứa khoảng trắng, ký tự đặc biệt hoặc dấu tiếng Việt. Ví dụ tốt: check_404.py, check_404_seo.py

Bước 3: Nhập thư viện cần thiết

Mỗi script Python cần bắt đầu bằng việc nhập các thư viện mà script sẽ sử dụng. Tùy vào mục tiêu cụ thể của bạn, bạn sẽ import các thư viện khác nhau.

import requests import csv import time from concurrent.futures import ThreadPoolExecutor, as_completed

Giải thích từng dòng: requests dùng để gửi HTTP request và lấy status_code, csv để lưu kết quả vào file CSV, time để thêm độ trễ giữa các request nhằm tránh quá tải server, concurrent.futures để chạy kiểm tra đa luồng và tiết kiệm thời gian với danh sách URL lớn.

Bước 4: Xác định danh sách URL cần kiểm tra

Cách bạn lấy danh sách URL để kiểm tra lỗi 404 tùy vào hoàn cảnh và quy mô của dự án SEO. Tôi sẽ hướng dẫn ba trường hợp phổ biến nhất mà bạn có thể gặp phải.

Trường hợp A: Danh sách URL cố định (nhỏ)

Phù hợp khi bạn chỉ có vài chục URL cần kiểm tra, thường là những URL bạn sưu tập thủ công từ Screaming Frog, Google Search Console, hoặc từ một báo cáo của khách hàng.

urls = [ “https://example.com/”, “https://example.com/bai-viet-1”, “https://example.com/san-pham-x”, “https://example.com/trang-khong-ton-tai”, ]

Trường hợp B: Đọc danh sách từ file văn bản (hàng trăm hoặc hàng nghìn URL)

Khi bạn có danh sách URL lớn, thường xuất từ sitemap, crawl tool hoặc log file server, nên lưu vào file .txt rồi đọc vào script. Tạo file urls.txt với mỗi URL trên một dòng riêng.

def load_urls_from_file(file_path): with open(file_path, “r”, encoding=”utf-8″) as f: return [line.strip() for line in f if line.strip()] urls = load_urls_from_file(“urls.txt”)

Trường hợp C: Lấy URL từ sitemap XML

Nếu bạn muốn kiểm tra tất cả URL trong sitemap mà không cần export thủ công, hãy dùng cách này. Script sẽ tải sitemap từ URL và tự động trích xuất tất cả các liên kết.

import xml.etree.ElementTree as ET def load_urls_from_sitemap(sitemap_url): resp = requests.get(sitemap_url) resp.raise_for_status() root = ET.fromstring(resp.content) ns = {“ns”: “http://www.sitemaps.org/schemas/sitemap/0.9”} urls = [] for loc in root.findall(“.//ns:loc”, ns): urls.append(loc.text) return urls urls = load_urls_from_sitemap(“https://example.com/sitemap.xml”)
Lưu ý: Nếu script không trích xuất được URL từ sitemap, hãy kiểm tra cấu trúc XML của sitemap bạn. Một số sitemap sử dụng namespace khác hoặc có sitemap con, cần xử lý riêng.

Bước 5: Viết hàm kiểm tra một URL

Hàm kiểm tra một URL là trái tim của script. Nó sẽ gửi yêu cầu HTTP GET tới một URL, lấy mã trạng thái, và trả về thông tin chi tiết để bạn phân tích.

def check_url(url, timeout=10): try: r = requests.get(url, timeout=timeout, allow_redirects=True) return { “url”: url, “status_code”: r.status_code, “is_404”: r.status_code == 404, “final_url”: r.url, } except requests.RequestException as e: return { “url”: url, “status_code”: None, “is_404”: False, “error”: str(e), }

Hàm này nhận vào một URL và giá trị timeout (thời gian chờ tối đa, mặc định 10 giây). Nó sử dụng requests.get() để gửi yêu cầu, có allow_redirects=True để tự động theo các redirect (301, 302) và lấy mã cuối cùng. Nếu request thành công, nó trả về dictionary chứa URL gốc, mã trạng thái HTTP, điều kiện is_404, và URL cuối cùng sau khi redirect. Nếu có lỗi (timeout, DNS không tìm thấy, lỗi SSL), exception handler sẽ bắt lỗi và trả về thông tin lỗi.

Bước 6: Viết hàm chạy kiểm tra hàng loạt

Tuỳ vào quy mô danh sách URL, bạn sẽ chọn cách chạy tuần tự hay song song (đa luồng). Danh sách nhỏ (dưới vài trăm) chạy tuần tự vẫn ổn, nhưng danh sách lớn sẽ chậm rất nhiều nếu không dùng đa luồng.

Phương pháp 1: Chạy tuần tự (đơn giản, dành cho danh sách nhỏ)

def main(): results = [] for url in urls: result = check_url(url) results.append(result) for item in results: if item.get(“is_404″): print(f”404: {item[‘url’]}”) elif item.get(“status_code”) is not None: print(f”{item[‘status_code’]}: {item[‘url’]}”) else: print(f”ERROR: {item[‘url’]} -> {item.get(‘error’)}”) if __name__ == “__main__”: main()

Phương pháp 2: Chạy đa luồng (nhanh hơn, dành cho danh sách lớn)

def main(): results = [] max_workers = 10 with ThreadPoolExecutor(max_workers=max_workers) as executor: futures = [executor.submit(check_url, url) for url in urls] for future in as_completed(futures): results.append(future.result()) for item in results: if item.get(“is_404″): print(f”404: {item[‘url’]}”) elif item.get(“status_code”) is not None: print(f”{item[‘status_code’]}: {item[‘url’]}”) else: print(f”ERROR: {item[‘url’]} -> {item.get(‘error’)}”) if __name__ == “__main__”: main()

Phương pháp đa luồng sử dụng ThreadPoolExecutor để tạo 10 luồng chạy song song. Mỗi luồng sẽ xử lý một URL, chờ máy chủ phản hồi trong khi các luồng khác tiếp tục kiểm tra URL khác. Điều này giảm thời gian thực thi đáng kể so với chạy tuần tự.

Cảnh báo quan trọng: Đừng set max_workers quá lớn (ví dụ 100 hoặc 200). Nếu bạn kiểm tra site của mình hoặc khách hàng, số luồng quá lớn có thể làm quá tải server và bị firewall chặn. Giá trị 5 đến 20 thường là hợp lý.

Bước 7: Lưu kết quả vào file CSV

Để dễ dàng chia sẻ kết quả với đội ngũ hoặc phân tích trong Excel, bạn nên lưu kết quả vào file CSV thay vì chỉ in ra màn hình.

def main(): results = [] max_workers = 10 with ThreadPoolExecutor(max_workers=max_workers) as executor: futures = [executor.submit(check_url, url) for url in urls] for future in as_completed(futures): results.append(future.result()) with open(“404_results.csv”, “w”, newline=””, encoding=”utf-8″) as f: writer = csv.DictWriter(f, fieldnames=[“url”, “status_code”, “is_404”, “final_url”, “error”]) writer.writeheader() for item in results: writer.writerow(item) total = len(results) count_404 = sum(1 for x in results if x.get(“is_404”)) count_error = sum(1 for x in results if x.get(“error”)) print(f”Tổng URL: {total}”) print(f”Lỗi 404: {count_404}”) print(f”Lỗi kết nối: {count_error}”) if __name__ == “__main__”: main()

Đoạn code này tạo file CSV với các cột: url, status_code, is_404, final_url, error. Sau khi ghi xong, nó in ra tóm tắt: tổng số URL kiểm tra, số lỗi 404, và số lỗi kết nối. Bạn có thể mở file CSV trong Excel để lọc, sắp xếp, và phân tích kết quả một cách dễ dàng.

Bước 8: Chạy script

Sau khi viết xong, lưu file check_404.py, mở Terminal hoặc Command Prompt, chuyển đến thư mục chứa file, rồi chạy lệnh sau:

python check_404.py

Hoặc nếu máy có nhiều phiên bản Python:

py check_404.py

Script sẽ bắt đầu gửi yêu cầu tới các URL, in kết quả ra màn hình, và ghi vào file CSV. Tùy vào số lượng URL và tốc độ mạng, quá trình này có thể mất vài giây đến vài phút.

Gặp lỗi ModuleNotFoundError? Nếu Python báo “No module named ‘requests'”, có nghĩa requests chưa được cài trong môi trường Python hiện tại. Cài lại bằng: python m pip install requests

Bước 9: Tùy chỉnh script theo mục tiêu SEO

Kỹ năng viết script kiểm tra lỗi 404 bằng Python không chỉ dừng lại ở việc phát hiện 404. Bạn có thể mở rộng script để xử lý các trường hợp phức tạp hơn.

Chỉ lưu URL bị 404

Nếu bạn chỉ quan tâm đến những URL trả về 404 để đưa cho dev fix, hãy lọc kết quả khi ghi file:

with open(“404_only.csv”, “w”, newline=””, encoding=”utf-8″) as f: writer = csv.DictWriter(f, fieldnames=[“url”, “status_code”]) writer.writeheader() for item in results: if item.get(“is_404”): writer.writerow({“url”: item[“url”], “status_code”: item[“status_code”]})

Phát hiện redirect chain và lỗi 5xx

Ngoài 404, bạn cũng nên chú ý các mã trạng thái khác như 301, 302 (redirect) và 5xx (lỗi server).

if item.get(“status_code”) == 404: print(f”404: {item[‘url’]}”) elif item.get(“status_code”) in (301, 302): print(f”REDIRECT: {item[‘url’]} -> {item[‘final_url’]}”) elif item.get(“status_code”) and item[“status_code”] >= 500: print(f”SERVER ERROR {item[‘status_code’]}: {item[‘url’]}”)

Giới hạn tốc độ request

Để tránh quá tải server hoặc bị chặn bởi firewall, hãy thêm độ trễ giữa các request:

import time def check_url(url, timeout=10): time.sleep(0.2) try: r = requests.get(url, timeout=timeout, allow_redirects=True) return { “url”: url, “status_code”: r.status_code, “is_404”: r.status_code == 404, “final_url”: r.url, } except requests.RequestException as e: return { “url”: url, “status_code”: None, “is_404”: False, “error”: str(e), }

Những trường hợp sử dụng phổ biến cho chuyên gia SEO

Hoàn cảnh SEO Cách lấy URL Ưu điểm chính Audit 404 trang nhất định sau thay đổi cấu trúc site Danh sách cố định (Trường hợp A) Nhanh, dễ hiểu, không cần chuẩn bị dữ liệu Kiểm tra 404 trong toàn bộ sitemap lớn Đọc từ sitemap (Trường hợp C) Tự động, không bỏ sót URL nào, dễ lặp lại Phân tích broken link từ log server Đọc từ file (Trường hợp B) Linh hoạt, hỗ trợ danh sách lớn từ log So sánh 404 trên nhiều domain khác nhau Nhiều file hoặc sitemap riêng Dễ tổng hợp báo cáo, lọc theo domain

Những lưu ý quan trọng khi viết script

  • Luôn đặt timeout hợp lý (5–15 giây) để tránh script treo khi server phản hồi chậm
  • Dùng encoding=”utf-8″ khi đọc/ghi file để hỗ trợ tiếng Việt và các ký tự đặc biệt
  • Cẩn thận với max_workers khi dùng đa luồng, không nên quá lớn để tránh bị rate limit hoặc chặn IP
  • Kiểm tra kỹ URL trong danh sách, đảm bảo mỗi URL có tiền tố http:// hoặc https://
  • Nếu kiểm tra site của chính bạn, xem xét thêm độ trễ giữa request để tránh ảnh hưởng tới hoạt động bình thường
  • Lưu kết quả vào file CSV để có thể phân tích, chia sẻ, và theo dõi lịch sử kiểm tra

Một số lỗi phổ biến và cách khắc phục

Lỗi “Connection timeout”: Server không phản hồi trong thời gian chờ. Tăng giá trị timeout hoặc kiểm tra kết nối mạng của bạn.
Lỗi “SSL: CERTIFICATE_VERIFY_FAILED”: Có vấn đề với chứng chỉ SSL. Bạn có thể thêm verify=False vào requests.get(), nhưng không nên làm vậy với site lạ.
Lỗi “No module named ‘requests'”: Thư viện requests chưa được cài. Chạy pip install requests lại.
File CSV không mở được hoặc ký tự lỗi: Kiểm tra xem encoding có phải là utf-8 không. Nếu mở bằng Excel trên Windows, có thể cần thêm BOM hoặc chuyển sang UTF-8 with BOM.

Mở rộng script với các tính năng nâng cao

Khi bạn đã làm quen với những kiến thức cơ bản, bạn có thể mở rộng script với các tính năng nâng cao nhằm tăng khả năng ứng dụng trong các dự án SEO phức tạp.

Đo thời gian phản hồi của từng URL

Tốc độ tải trang là yếu tố SEO quan trọng. Bạn có thể mở rộng script để ghi nhận thời gian phản hồi:

import time def check_url(url, timeout=10): try: start_time = time.time() r = requests.get(url, timeout=timeout, allow_redirects=True) response_time = time.time() – start_time return { “url”: url, “status_code”: r.status_code, “is_404”: r.status_code == 404, “final_url”: r.url, “response_time”: round(response_time, 2), } except requests.RequestException as e: return { “url”: url, “status_code”: None, “is_404”: False, “error”: str(e), “response_time”: None, }

Lưu log chi tiết vào file text

Ngoài file CSV, bạn có thể tạo file log để ghi lại thông tin chi tiết về từng request, hữu ích cho debugging:

def main(): results = [] max_workers = 10 with open(“check_404.log”, “w”, encoding=”utf-8″) as log_file: log_file.write(“Bắt đầu kiểm tra 404\\n”) with ThreadPoolExecutor(max_workers=max_workers) as executor: futures = [executor.submit(check_url, url) for url in urls] for future in as_completed(futures): result = future.result() results.append(result) if result.get(“is_404″): log_file.write(f”[404] {result[‘url’]}\\n”) elif result.get(“error”): log_file.write(f”[ERROR] {result[‘url’]}: {result[‘error’]}\\n”) log_file.write(“Hoàn tất kiểm tra\\n”)

Mẹo tối ưu hiệu năng cho danh sách URL siêu lớn

Tối ưu hóa Mô tả
Tăng max_workers theo từng mức Bắt đầu với 5, tăng lên 10, 15, 20 và đo thời gian. Tìm điểm cân bằng giữa tốc độ và tải server
Sử dụng session cho nhiều request requests.Session() sẽ tái sử dụng kết nối TCP, nhanh hơn tạo kết nối mới mỗi lần
Xử lý retry cho request thất bại Một số URL có thể timeout ngẫu nhiên. Thêm logic retry để kiểm tra lại trước khi kết luận
Chia nhỏ danh sách URL Thay vì kiểm tra 10,000 URL cùng lúc, chia thành batch 1,000 URL và chạy lần lượt, dễ quản lý
“Kiểm tra lỗi 404 hàng loạt bằng Python không chỉ tiết kiệm thời gian mà còn giúp bạn phát hiện các vấn đề kỹ thuật SEO mà kiểm tra thủ công hoàn toàn bỏ sót. Đây là một kỹ năng thiết yếu cho bất kỳ chuyên gia SEO nào muốn tự động hóa quy trình audit.”

Tóm tắt nhanh quy trình viết script

  • Cài Python và thư viện requests
  • Chọn trình soạn thảo code (VS Code khuyên dùng)
  • Tạo file .py và import các thư viện cần thiết
  • Chọn cách lấy danh sách URL (list cố định, file, hoặc sitemap)
  • Viết hàm check_url() để kiểm tra một URL
  • Viết hàm main() để chạy kiểm tra hàng loạt (tuần tự hoặc đa luồng)
  • Lưu kết quả vào file CSV để phân tích
  • Lưu file, chạy script từ Terminal
  • Tùy chỉnh script theo mục tiêu SEO cụ thể (chỉ 404, redirect, 5xx…)
  • Mở rộng thêm tính năng nâng cao như đo thời gian phản hồi, log file, retry

Kết luận

Viết script Python kiểm tra lỗi 404 hàng loạt là một bước quan trọng giúp bạn nâng cao kỹ năng SEO kỹ thuật. Từ chuẩn bị môi trường Python, lựa chọn cách lấy danh sách URL, cho đến tối ưu hóa hiệu năng với xử lý đa luồng, bạn đã có đủ kiến thức để áp dụng vào các dự án thực tế. Hãy bắt đầu với một danh sách URL nhỏ, thử nghiệm và mở rộng dần khi có thêm kinh nghiệm. Script này sẽ giúp bạn tiết kiệm hàng chục giờ công thủ công mỗi tháng, đồng thời giảm thiểu sai sót trong quá trình kiểm tra 404. Nhớ rằng, lỗi 404 không chỉ ảnh hưởng tới trải nghiệm người dùng mà còn tác động tiêu cực đến thứ hạng tìm kiếm của bạn. Sử dụng công cụ tự động hóa một cách khôn ngoan, bạn sẽ có thể nắm bắt tốt hơn tình trạng sức khỏe kỹ thuật của website.

Khánh Linh
Khánh Linh
1059 bài đăng
Khánh Linh
Khánh Linh
1059 bài đăng
  • VietMoz xin chào!

TRUNG TÂM ĐÀO TẠO VIETMOZ ACADEMY

Địa chỉ: Số 18 ngõ 11 Thái Hà, Đống Đa, Hà Nội
Điện thoại: (0246) 292 3344 – (0246) 291 2244
Hotline: 098 380 3333
Email: info@vietmoz.com

Google Partners Chung nhan Tin Nhiem Mang
DMCA.com Protection Status

Truy cập nhanh

  • Hướng dẫn thanh toán
  • Cơ sở vật chất
  • Chính sách bảo mật thông tin
  • Tổng quan về Digital Marketing
  • Tìm hiểu Marketing là gì
Bản quyền © bởi Trung tâm đào tạo VietMoz Academy. Tối ưu bởi Code Tốt.
  • Trang chủ
  • Giới thiệu
    • Giới thiệu VietMoz Academy
    • Cơ sở vật chất
    • Hoạt động cộng đồng
  • Chương trình học
    • Lịch tuyển sinh
    • Khóa học SEO tiêu chuẩn
    • Google Marketing
      • Khóa học Adwords Pro Sales
      • Khoá học Google Map Premium
      • Khóa học SEO HCM Special
      • Khóa học GA4 from Zero to Hero
    • Thực hành quảng cáo Facebook
      • Khóa học Winning Facebook Ads
      • Khóa học Facebook Marketing
    • Khoá học kinh doanh thương mại điện tử trên sàn Shopee
    • Marketing tinh gọn
      • Marketing Fundamentals
      • Khoá học MSP – Thực hành xây dựng chiến lược marketing
      • Khoá học Digital Masterclass
      • Khóa học Sale Promotion
  • Blog
    • Tin tức
    • Cách làm SEO
      • SEO Cafe – Tin tức SEO mới nhất
      • Wiki SEO – Thư viện kiến thức quan trọng
      • SEO Guide – Hướng dẫn làm SEO
      • SEO Case Study
      • Resource – Công cụ & Template
    • Blog Marketing
    • Kiến thức Google Adwords
    • Blog Facebook Marketing
    • Blog Content
  • Liên hệ
    • Đăng ký học
    • Hướng dẫn thanh toán
    • Bản đồ đường đi
Gõ để tìm