Lấy dữ liệu HS code từ trang web
Hi các anh chị và các bạn, hiện tại mình đang cần lấy dữ liệu full bộ HS Code 98 chương từ trang : https://vntr.moit.gov.vn/vi/search
Mình đã thử làm với nodeJS và có một chút kết quả tuy nhiên mình gặp phải vấn đề khó khăn là DOM của trang này thiết kế động. Tức là ngay từ đầu load trang nó không tải hết các data cấp con bên trong mà khi nào mình muốn xem đến data cấp con nào thì cần phải bấm vào cấp cha thì sau đó nó mới lấy dữ liệu và gắn vào DOM để hiển thị ra. Điều này gây khó khăn trong việc xử lý crawl. Mọi người có biết cách xử lý cho tình huống này không xin chỉ giáo mình với ạ. Mình xin cám ơn rất nhiều
1 CÂU TRẢ LỜI
@wiliamfeng Viết script gọi thẳng API của họ luôn bạn ơi. Crawl theo DOM làm gì. Mẫu endpoint này để lấy mấy thằng con thì phải. Bạn ngâm cứu theo hướng này xem:
curl 'https://vntr.moit.gov.vn/vi/api/v1/commodity/child'
--data-raw 'v=&id=05&c_level=-1&locale=vi&search_id='
@huukimit mình chưa hình dung được cách làm này cụ thể này thế nào mong bạn chỉ giáo mình thêm chút được không
@wiliamfeng nghĩa là web này nó cung cấp sẵn API để lấy content rồi, giờ chỉ cần dùng luôn API của nó thay vì phải get content từ DOM.
@wiliamfeng thì lại chuyển cái kết quả trả về sang DOM xong bóc lấy data và link. Trong code HTML ban đầu có sẵn thẻ <ul><li></li></ul>
để lưu rồi đó.