Yêu cầu thg 11 1, 2021 4:00 SA 93 1 1
  • 93 1 1
+1

Sử dụng puppeteersharp để crawl data

Chia sẻ
  • 93 1 1

Mình đang sử dụng puppeteersharp để crawl data, mình có một vấn đề về việc các element html sẽ có thể bị thay đổi path. Có một hướng xử lý nào để đáp ứng linh động với việc thay đổi này không?

Mình cám ơn!

Avatar Lê Vĩnh Thiện @le.vinh.thien
thg 11 2, 2021 12:48 CH

@vinhlq thay đổi ở đây là css selector bị đổi hay cấu trúc html bị đổi?

nếu css selector đổi thì có thể dùng xpath để select.

thg 11 11, 2021 3:22 SA

@le.vinh.thien Cám ơn bạn đã mất thời gian phản hồi cho mình. Vấn đề của mình đang bị thay đổi css selector và cũng có thể thay đổi cấu trúc html. Mình đang dùng xpath, nhưng xpath cũng có thể thay đổi bạn ạ ( vd là class, id, thẻ html)

Avatar Lê Vĩnh Thiện @le.vinh.thien
thg 11 12, 2021 5:46 CH

@vinhlq nếu ko dùng id, class thì bạn có thể dùng tên các tag thôi. nếu cấu trức thay đổi thì bạn phải xem, tìm phần tử tương ứng có đặc trưng, ví dụ tìm label có text là abcxyz rồi từ đó select những thông tin cần như là của cha nó or có div liền kề, nói chung là vậy.

một trang web rất khó có thể thay đổi cấu trúc html, chẳng qua bạn chưa test đủ hết case để nó hiển thị thôi.

1 CÂU TRẢ LỜI


Đã trả lời thg 11 17, 2021 2:20 SA
+1

Mình thấy nếu đi crawl thì phải chấp nhận việc website nguồn thay đổi trong HTML thôi chứ làm sao được. Thường mình mình thay khai báo các phần selector tới element để lấy data thành một cái constant. Tổng hợp nó lại vào một file config rồi khi có thay đổi thì mình sẽ sửa biến const đấy cho đỡ mất công đi tìm.

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí