+1
Sử dụng puppeteersharp để crawl data
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!
1 CÂU TRẢ LỜI
+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.
@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.
@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)
@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.