Sử dụng MongoDB để lưu data sau khi Scrape bằng Scrapy

Tram Ho

Hey yoo,chào mọi người,hôm nay mình sẽ giới thiệu về cách lưu data sau khi Scrape vào mongoDB,chi tiết về project mình đã giới thiệu trong bài trước .
Link

Giới thiệu MongoDB

  1. MongoDB là một loại cơ sở dữ liệu mã nguồn mở,thuộc loại NoSQL.
  2. Là một loại cơ sở dữ liệu hướng document,data được lưu vào một nơi gọi là Collection,tương tự như bảng ở các hệ cơ sở dữ liệu như MySQL,PostgreSQL.
  3. So với RDBMS thì trong MongoDB collection ứng với table, còn document sẽ ứng với row , MongoDB sẽ dùng các document thay cho row trong RDBMS.

Viết code cho pipeline

Chúng ta viết lại code cho pipeline,sử dụng pymongo(Một công cụ giúp tương tác với MongoDB qua Python.

Class MongoDBPipeline khởi tạo với hàm khởi tạo Init ra một đối tượng MongoClient có thuộc tính “localhost” và connect ở port 27017,chúng ta đặt tên cho database là “Mac” và tên của Collection và “Item”

Sau khi thêm đoạn code vừa rồi,ta thay tên của pipeline trong file settings thành :

Chạy lại project,và sau đó kiểm tra trong MongoDB,ta chạy lệnh.

sau đó :

Ta có thể thấy database Mac đã được tạo

Okay,query nào.Đầu tiên là :

và sau đó :

Data đã được lưu như hình dưới :

Kết luận

Bài viết này mình đã giới thiệu về cách import data vào trong MongoDB từ Scrapy,bài tiếp theo mình sẽ giới thiệu về Scrapy Cluster,cảm ơn mọi người đã quan tâm.

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo