Cách sử dụng Data Miner để trích xuất dữ liệu từ các trang web

Nếu đang sao chép và dán mọi thứ từ các trang web và đặt chúng vào bảng tính theo cách thủ công, bạn sẽ không biết data scraping (hay web scraping) là gì. Cũng có thể bạn biết chúng là gì nhưng thực sự không quan tâm đến ý tưởng học cách viết code chỉ để tiết kiệm cho mình vài giờ nhấp chuột.

Dù bằng cách nào, có rất nhiều công cụ data scraping không cần sử dụng đến code có thể giúp bạn trong những tình huống như vậy, và tiện ích mở rộng Data Miner của Chrome là một trong những tùy chọn trực quan nhất. Nếu may mắn, nhiệm vụ mà bạn đang thực hiện sẽ được bao gồm trong phần sổ công thức có sẵn của công cụ này. Khi đó, bạn thậm chí không phải trải qua các bước để xây dựng công thức của riêng mình.

Data Miner hoạt động như thế nào?

Công cụ Data Miner giúp bạn lấy dữ liệu khỏi các trang web và đưa vào file Excel/CSV được định dạng đẹp mắt bằng cách xem qua văn bản của các trang bạn đã load. Điều đó có nghĩa là ít nhất bạn sẽ cần thấy thoải mái khi làm việc với HTML để nhận ra một vài pattern (mẫu), nhưng không có kiến thức gì quá rộng cả. Các kỹ năng HTML và/hoặc JavaScript nâng cao chắc chắn sẽ giúp ích cho một số tác vụ, nhưng không cần thiết cho hầu hết mọi thứ. Bạn cũng nên có tối thiểu các kỹ năng bảng tính cơ bản để có thể chắc chắn đầu ra của mình gọn gàng và có tổ chức.

1. Thiết lập Data Miner

Thiết lập Data Miner

Sử dụng Chrome hoặc trình duyệt Chromium khác, rồi cài đặt tiện ích mở rộng. Biểu tượng của tiện ích mở rộng sẽ xuất hiện trên thanh công cụ. Nhấp vào nó sẽ đưa bạn đến một trang nơi bạn có thể thiết lập tài khoản. Phiên bản miễn phí cung cấp cho bạn 500 lần scrape (trích xuất dữ liệu) mỗi tháng, có lẽ là đủ, trừ khi đây là việc bạn làm mỗi ngày.

2. Load dữ liệu

Load dữ liệu

Đầu tiên, điều hướng đến trang bạn muốn trích xuất dữ liệu. Nếu bạn có nhiều trang dữ liệu hoặc một số dữ liệu bị ẩn sau các nút, thì điều đó vẫn sẽ ổn thôi - có nhiều cách để đối phó với tình huống này. Hiện tại, bạn sẽ chỉ cần một mẫu đại diện để chương trình biết những gì cần tìm.

3. Kiểm tra công thức

Kiểm tra công thức

Tiếp theo, hãy mở Data Miner và kiểm tra tab “Public” để biết các công thức hiện có. Nếu bạn đang ở trên một trang web phổ biến, một người khác có thể đã tạo quy trình để lấy dữ liệu mà bạn đang tìm kiếm. Điều này sẽ giúp bạn tiết kiệm khá nhiều thời gian. Ví dụ, các trang web như Google, Amazon và Twitter có rất nhiều công thức có sẵn để giúp bạn tải xuống ngay lập tức các liên kết, giá cả, văn bản và dữ liệu khác. Bạn có thể kiểm tra các công thức bằng cách nhấp vào nút Run để thấy bản xem trước của bảng tính mà Data Miner tạo ra. Bạn cũng có thể điều chỉnh các công thức hiện có để phù hợp với nhu cầu của mình, bằng cách nhấn nút “Edit”.

4. Loại trang

Loại trang

Nếu không có công thức nào phù hợp với bạn, điều đó cũng không sao cả, bạn có thể tạo cái của riêng mình. Chỉ cần nhấp vào nút “New Recipe” để bắt đầu.

Lựa chọn đầu tiên của bạn sẽ là “List Page” hoặc “Detail Page”.

  • Chọn “ListPage” nếu bạn đang cố gắng lấy nhiều hàng dữ liệu trên một trang. Ví dụ, bạn có thể muốn tải xuống liên kết và tiêu đề trang của mỗi kết quả tìm kiếm hoặc nhận ngày và nội dung của bài đăng trong nguồn cấp dữ liệu. Đây có lẽ là loại phổ biến nhất và là loại sẽ được sử dụng làm mẫu trong bài viết này. (Các bước cho “Detail Page” về cơ bản là giống nhau.)
  • Chọn “Detail Page” nếu bạn có nhiều thông tin khác nhau về một điều gì đó trên trang - ví dụ, trang sản phẩm, nơi bạn cần lấy giá, mô tả, liên kết và xếp hạng của nó, rồi đặt tất cả trong một hàng.

5. Tạo hàng

Tạo hàng

Nhấn nút “Find” và di chuyển chuột cho đến khi hộp chọn màu vàng bao gồm tất cả dữ liệu bạn cần cho mục nhập vào bảng tính cuối cùng. Ví dụ, nếu tải xuống kết quả tìm kiếm, bạn sẽ cần highlight một khu vực đủ lớn để bao gồm tiêu đề, URL và mô tả, mỗi cái có thể đặt vào các cột riêng biệt trong bước tiếp theo. Để lựa chọn, nhấn phím Shift. Đừng lo lắng nếu bạn vô tình nhả tay ra. Data Miner lưu tất cả tiến trình ngay cả khi bạn điều hướng khỏi trang.

Sau đó, bạn sẽ muốn chọn ít nhất một trong các hộp thuộc phần “Element’s Classes” hoặc “HTMLElementType”. Lý tưởng nhất là bạn sẽ thấy vùng chọn bao quát mọi phần tử trên trang có cùng loại với cái bạn đã chọn.

Chọn ít nhất một trong các hộp thuộc phần “Element’s Classes” hoặc “HTMLElementType”

Nếu bạn thấy rằng selector (bộ chọn) không bao gồm tất cả mọi thứ mình cần, hãy thử chọn chỉ một trong các yếu tố và nhấn vào “SelectParent”. Điều này sẽ làm cho hộp lớn hơn và có thể nắm bắt mọi thứ bạn cần. Nếu không, bạn có thể cần đào sâu vào HTML một chút và xác định các lớp và loại phần tử bạn cần. Khi nghi ngờ, hãy nhấn vào “Select Parent” cho đến khi hộp trở nên lớn nhất có thể mà không bao gồm nhiều mục nhập danh sách, vì điều này sẽ giúp bạn linh hoạt hơn khi chọn các cột.

Data Miner cung cấp cho bạn tùy chọn “View Element’s HTML” ở phía dưới và cũng cho phép bạn nhập các selector tùy chỉnh. Nếu bạn muốn lấy tất cả các liên kết trên một trang với lớp “product”, bạn có thể chỉ cần nhập a.product. Đây là lúc một số kiến ​​thức HTML/CSS cơ bản sẽ thực sự có ích.

Data Miner cung cấp tùy chọn “View Element’s HTML”

Khi trở lại menu hàng chính, bạn sẽ thấy tùy chọn “Row Count” với số lượng mục mà công thức của bạn sẽ tạo trong một bảng tính. Nếu nó không bao gồm tất cả mọi thứ, bạn sẽ cần phải kiểm tra lại lựa chọn hàng của mình.

6. Chia dữ liệu thành các cột

Chia dữ liệu thành các cột

Khi chọn xong tất cả dữ liệu cho các hàng của mình, đã đến lúc làm mọi thứ trông thật đẹp mắt bằng cách chia nó thành nhiều loại cột khác nhau. Mỗi vùng chọn được thực hiện ở đây phải là một tiểu mục của hộp bạn đã chọn cho hàng của mình.

Mỗi vùng chọn được thực hiện ở đây phải là một tiểu mục của hộp bạn đã chọn cho hàng của mình

Để tạo một cột, chỉ cần nhập tên cho nó và sử dụng nút Find để chọn những gì bạn muốn trích xuất, giống như bạn đã làm cho các hàng. Dữ liệu phổ biến nhất có thể sẽ là văn bản, URL hoặc URL hình ảnh. Lấy URL bằng cách di chuột qua các liên kết văn bản có thể hơi khó khăn. Bạn có thể phải nhấn vào “Select Parent” cho đến khi bạn đạt đến cấp độ trong đó Element Type<a>, đó là thẻ HTML cho các liên kết.

Nhấn vào “Select Parent”

Để đảm bảo bạn có đúng loại dữ liệu trong cột của mình, chỉ cần nhấn biểu tượng con mắt ở bên phải của mỗi tên cột, bên cạnh con số cho biết bạn đã chọn bao nhiêu cột. Điều này sẽ cho bạn thấy một bản xem trước của mỗi hàng cho cột đó. Nếu có thứ gì đó không đúng, hãy quay lại để chỉnh những thẻ và loại bạn đã chọn để xác định các hàng. Đừng ngại mở trình xem HTML và kiểm tra các mẫu liên quan đến dữ liệu mà bạn đang cố lấy.

7. Nói cho Data Miner cách đến trang tiếp theo

Nói cho Data Miner cách đến trang tiếp theo

Nếu có nhiều trang dữ liệu để trích xuất, có lẽ bạn không muốn nhấp qua từng trang và chạy lại công thức của mình. Để giải quyết vấn đề đó, chỉ cần cho Data Miner biết nơi tìm nút điều hướng nó cần nhấp để đến trang tiếp theo. Cẩn thận đừng bảo nó nhấp vào một cái gì đó như “Page 2”, vì sau đó nó sẽ chỉ đi đến Page 2 mà thôi. Một lần nữa, hãy chắc chắn rằng bạn đang chọn một phần tử <a> và sử dụng nút Test Navigation để đảm bảo nó hoạt động.

Hãy chắc chắn rằng bạn đang chọn một phần tử <a> và sử dụng nút Test Navigation

8. Nói với Data Miner nơi nhấp hoặc cuộn để load dữ liệu

Nói với Data Miner nơi nhấp hoặc cuộn để load dữ liệu

Một số trang không load dữ liệu cho đến khi bạn nhấp vào một cái gì đó hoặc cuộn xuống. May mắn thay, Data Miner cũng có thể làm những điều này! Sử dụng công cụ Find ở phía trên để chọn phần tử bạn cần thao tác, sau đó đặt selector vào hộp thích hợp và kiểm tra để đảm bảo nó hoạt động.

Tìm ra chính xác selector nào sẽ kích hoạt phần tử hoặc thanh cuộn vô hạn có thể khó, nhưng kiến ​​thức HTML cơ bản, cũng như một số thử nghiệm và lỗi sẽ hữu ích ở đây. Hầu hết mọi thứ mà bạn sẽ cần phải thao tác ở đây là dựa trên JavaScript, nhưng Data Miner chỉ cần biết selector CSS được liên kết với hành động để kích hoạt nó, do đó, bạn không phải loay hoay với bất kỳ code nào trong hầu hết các trường hợp.

Bước tiếp theo cũng cho phép bạn thêm vào JS tùy chỉnh để thực hiện bất kỳ thứ gì mình muốn, nhưng điều đó khá tiên tiến và vượt xa những gì cần để trích xuất dữ liệu cơ bản.

9. Lưu và chạy công thức

Lưu và chạy công thức

Xin chúc mừng! Bây giờ là lúc để xem liệu tất cả đã kết hợp với nhau đúng cách chưa. Chạy công thức trên trang mà bạn đã đăng nhập, rồi kiểm tra bản xem trước để xem các hàng và cột có đang làm mọi thứ đúng như dự định không. Nếu không, bạn có thể quay lại và chỉnh sửa công thức.

Chạy công thức trên trang

Nếu mọi thứ hoạt động như bình thường, bạn có thể sử dụng nút “Next Page” để nói cho Data Miner biết nên thu thập dữ liệu bao nhiêu trang và tốc độ thực hiện (Làm quá nhanh có thể khiến hệ thống gắn cờ bạn là bot).

Sử dụng nút “Next Page”

Sau khi có tất cả dữ liệu mình cần, bạn có thể chọn định dạng file muốn sử dụng để tải xuống.

Chọn định dạng file

Nếu gặp rắc rối, có cách nào dễ dàng hơn không?

Nếu chương trình Data Miner không phù hợp với bạn, có rất nhiều công cụ data scraping khác có sẵn như ParseHub, Scraper, Octoparse, Import.io, VisualScraper, v.v... Một vài công cụ trong số này có thể có giao diện trực quan và tự động hóa hơn, nhưng bạn vẫn sẽ cần phải biết ít nhất một chút về HTML và cách các trang web được tổ chức như thế nào.

Điều làm cho Data Miner đặc biệt tốt đối với người mới bắt đầu là thư viện công thức từ cộng đồng, có khả năng giúp bạn tránh ngay cả cuộc “chạm trán” nhỏ nhất với code. Điều đó, kết hợp với gói scrape miễn phí hàng tháng khá hào phóng, làm cho Data Miner trở thành công cụ rất tốt cho hầu hết mọi nhu cầu.

Chúc bạn thực hiện thành công!

Thứ Hai, 09/12/2019 15:57
51 👨 539