Cách cạo toàn bộ trang web Python
Web Scraping là một phương pháp trích xuất dữ liệu hữu ích từ một trang web bằng các chương trình máy tính mà không phải thực hiện thủ công. Dữ liệu này sau đó có thể được xuất và sắp xếp theo thứ tự cho các mục đích khác nhau. Một số nơi phổ biến mà Web Scraping được sử dụng là Trang web phân tích & nghiên cứu thị trường, Công cụ so sánh giá, Công cụ tìm kiếm, Thu thập dữ liệu cho các dự án AI/ML, v.v. Show Hãy tìm hiểu sâu và tìm kiếm một trang web. Trong bài viết này, chúng tôi sẽ sử dụng trang web GeekforGeek và trích xuất tiêu đề của tất cả các bài báo có trên Trang chủ bằng cách sử dụng tập lệnh Python. Nếu bạn để ý, có hàng ngàn bài viết trên trang web và để trích xuất tất cả chúng, chúng tôi sẽ phải quét qua tất cả các trang để chúng tôi không bỏ sót bài nào. Trang chủ GeekforGeek Cạo nhiều trang của một trang web bằng PythonBây giờ, có thể phát sinh nhiều trường hợp khác nhau mà bạn có thể muốn lấy dữ liệu từ nhiều trang từ cùng một trang web hoặc nhiều URL khác nhau và viết mã thủ công cho từng trang web là một công việc tốn thời gian và tẻ nhạt. Ngoài ra, nó xác định tất cả các nguyên tắc cơ bản của tự động hóa. Tât nhiên. Để giải quyết vấn đề chính xác này, chúng ta sẽ thấy hai kỹ thuật chính sẽ giúp chúng ta trích xuất dữ liệu từ nhiều trang web
Tiếp cận Cách tiếp cận của chương trình sẽ khá đơn giản và sẽ dễ hiểu hơn ở định dạng ĐIỂM
ví dụ 1. Lặp qua các số trang số trang ở dưới cùng của trang web GeekforGeek Hầu hết các trang web có các trang được đánh số từ 1 đến N. Điều này giúp chúng tôi thực sự đơn giản để lặp qua các trang này và trích xuất dữ liệu từ chúng vì các trang này có cấu trúc tương tự nhau. Ví dụ chú ý phần cuối cùng của URL – trang/4/ Tại đây, chúng ta có thể xem chi tiết trang ở cuối URL. Sử dụng thông tin này, chúng ta có thể dễ dàng tạo vòng lặp for lặp qua bao nhiêu trang tùy thích (bằng cách đặt trang/(i)/ vào chuỗi URL và lặp từ “i” cho đến N) và lấy tất cả dữ liệu hữu ích từ chúng. Đoạn mã sau sẽ giúp bạn hiểu rõ hơn về cách cạo dữ liệu bằng cách sử dụng Vòng lặp For trong Python con trăn
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds1
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds3 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds5 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds6_______0_______0 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds8 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds9 import 0
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 import 8import 9_______22_______0requests 1requests 2
đầu ra Đầu ra cho đoạn mã trên Bây giờ, sử dụng đoạn mã trên, chúng ta có thể lấy tiêu đề của tất cả các bài viết bằng cách kẹp các dòng đó bằng một vòng lặp con trăn
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 from 7
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 import 8import 9 BeautifulSoup as bs 0BeautifulSoup as bs 1import 9 BeautifulSoup as bs 3import 0
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds8_______0_______9 import 0
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 import 4import 5import 65 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds0 import 8import 9requests 0requests 1requests 2
5 I waited 5 seconds 4 I waited 4 seconds 5 I waited 5 seconds03 bs4 7
Bạn có thể cạo toàn bộ trang web không?Kiểm tra HTML của trang web mà bạn muốn thu thập dữ liệu. Truy cập URL của trang web bằng mã và tải xuống tất cả nội dung HTML trên trang . Định dạng nội dung đã tải xuống thành định dạng có thể đọc được. Trích xuất thông tin hữu ích và lưu nó ở định dạng có cấu trúc.
Quét web bằng Python có hợp pháp không?Không chia sẻ bất hợp pháp nội dung đã tải xuống. Việc thu thập dữ liệu cho mục đích cá nhân thường được chấp nhận, ngay cả khi đó là thông tin có bản quyền, vì nó có thể thuộc điều khoản sử dụng hợp lý của luật sở hữu trí tuệ . |