Clone trang web sau vài nốt nhạc

Vừa mới thử nghiệm với Python để crawl data có thể clone một trang web sau một nốt nhạc.

Mình sử dụng Anaconda để code Python, kết nối cơ sở dữ liệu MariaDB.

Các thành phần chính và công việc cần làm như sau:

Môi trường:

  • Ngôn ngữ lập trình Python
  • IDE sử dụng Anaconda
  • Database: MariaDB (tương tự MySQL) – để thử nghiệm cái mới vì nghe đồn MySQL dần dần mất tính nguồn mở
  • Một số thư viện chính: Kết nối giữa python và mysql, beautifulsoup để crawl.

Phương thức làm:

  • Khởi đầu là trang web của website hoặc blog là một link trong CSDL
  • Từ CSDL có link ta lấy toàn bộ link có cùng tên miền trong trang đó và lưu lại vào bảng
  • Lặp lại công việc trên với bảng trong CSDL. Việc lặp này tiệm cận đến việc lấy được toàn bộ trang web của nó (có thể không hết)
  • Từ danh sách các link này (loại bỏ trùng lặp) lần lượt lấy content của trang web và lưu lại vào CSDL của mình.

Tất nhiên nói đơn giản thì đơn giản nhưng sẽ vẫn có một số vấn đề cần phải giải quyết như tốc độ, các truy vấn mà trang đó cho phép…

Mình cũng đã thực hiện được một số thao tác cơ bản nhưng khá quan trọng và nói việc này trong tầm tay.