10/10/2018, 11:21

Giúp mình thuật toán lấy tin tự động từ website khác

Mình muốn lấy tin tức tự động từ một website khác và hiển thị nội dung ngay trên website của mình khi mình click vào link tiêu đề bài viết. Không phải RSS đâu nha. Bạn nào từng bóc tách dữ liệu như này rồi thì hướng dẫn mình cách thức giải quyết với được không. Mình cám ơn trước.
langtusitinh225 viết 13:34 ngày 10/10/2018
Cơ bản là anh đọc source của trang muốn lấy rồi dùng các hàm xử lý chuỗi để bóc tách dữ liệu chứ không có thuật toán nào đâu
zmt264 viết 13:25 ngày 10/10/2018
Được gửi bởi langtusitinh225
Cơ bản là anh đọc source của trang muốn lấy rồi dùng các hàm xử lý chuỗi để bóc tách dữ liệu chứ không có thuật toán nào đâu
em @langtusitinh225 nói đúng rồi, để bóc tách thì có thể dùng DOM hoặc Regular Express, 2 cái này đều khó học, ko thể trong ngày 1 ngày 2 là xong, nếu chủ thớt (@tuanit85) chưa giỏi 2 cái đó thì chịu khó luyện thêm đến khi nào tự tin là nắm vững rồi ta sẽ thảo luận tiếp về cách bóc tách
Trịnh Ngọc Lan viết 13:31 ngày 10/10/2018
Nói chung thì cũng chỉ xử lý các chuỗi ký tự bằng substr() và strpos()
niksearch viết 13:34 ngày 10/10/2018
Dùng VietSpider đi. Viết làm gì, đang dùng cái này để quét tin thấy ổn mà.
s.code viết 13:23 ngày 10/10/2018
Để có thể lấy tin tự động từ 1 hay nhiều site khác một cách lâu dài và thường nhật thì cần những thứ sau:

+ Có một phần chuyên thu thập link (link crawler). Cái này chịu trách nhiệm đi phân tích những trang list bài viết để thu thập link rồi cập nhật vào cơ sở dữ liệu.

Ví dụ trang list: http://vnexpress.net/GL/The-gioi/

Ta sẽ thu thập tất cả các link rồi về so sánh với database nếu có rồi thì thôi còn chưa thì thêm mới vào.

+ Phần 2 là chuyên thu thập dữ liệu (data crawler) phần này đọc những link đã thu thập được và bắt đầu lấy dữ liệu bài viết đó về trang mình. Nhớ là link nào đã lấy dữ liệu thì cắm cái cờ cho nó để đánh dấu lấy rồi.

More Thuật toán lấy tin tự động từ website khác - giải đáp
jupiter2k4 viết 13:26 ngày 10/10/2018
Các bác cho mình hỏi, mình muốn lấy 1 số liệu được cập nhật từ 1 website và đưa vào 1 file excel thì có được không?
Ví dụ mình muốn phân tích giá dầu thế giới từng ngày; có cách nào lấy giá dầu và tỉ giá USD tại 1 trang (như oil-price.net) rồi đưa vào file excel của mình (tự động hàng ngày) được không?
izwebz viết 13:29 ngày 10/10/2018
Nếu bạn muốn học cách làm cho vui hoặc học để biết cách làm thì được, nhưng thiết nghĩ copy nguyên phần tin tức của họ để vào trang của mình thì có lợi không ta? nếu muốn đọc tin thì vô thẳng vnexpress để đọc đâu cần đọc qua trung gian? vì vô vnexpress cũng miễn phí đó mà .

Nên tôi nghĩ dùng RSS vừa "hợp pháp" mà lại nhanh, gọn nhẹ
kiem_bo viết 13:33 ngày 10/10/2018
à cho mềnh hỏi là trong việc bóc tách tin thì dùng DOM hay regular express thì sẽ tối ưu hơn về mặc xử lý.
zmt264 viết 13:30 ngày 10/10/2018
Được gửi bởi kiem_bo
à cho mềnh hỏi là trong việc bóc tách tin thì dùng DOM hay regular express thì sẽ tối ưu hơn về mặc xử lý.
Nói chung thì RE thắng vì RE xử lý linh động hơn. Ngoài ra DOM về lý thuyết thì nó cần load toàn bộ dữ liệu vào Mem (hại Mem và đôi khi không đủ Mem để xử lý bằng DOM, nếu dữ liệu quá lớn) , về tốc độ thì có thể tham khảo ở đây: http://jsperf.com/dom-parsing-vs-regex

À, ngoài DOM ra còn có SAX, cái này bạn nào học XML chắc vẫn nhớ:
http://stackoverflow.com/questions/1...nctions-in-php
Bài liên quan
0