Python kết nối với mongodb bằng tên người dùng và mật khẩu

Vì các trang web bao gồm dữ liệu Có cấu trúc và Không cấu trúc, nên bạn cần một Cơ sở dữ liệu mạnh mẽ có thể lưu giữ bản ghi bảo mật của dữ liệu đó. Để xử lý dữ liệu Phi cấu trúc mở rộng, bạn có thể sử dụng Cơ sở dữ liệu MongoDB. Cơ sở dữ liệu MongoDB có thể kết nối với các ứng dụng web thông qua bất kỳ ngôn ngữ lập trình nào như PHP, Python, Ruby, Scala, C, C++, v.v.

Python có thể kết nối với Cơ sở dữ liệu MongoDB bằng thư viện pymongo, cho phép người dùng truy cập tài liệu và bộ sưu tập trong Cơ sở dữ liệu MongoDB một cách dễ dàng. Dữ liệu được truy xuất thông qua thư viện pymongo dễ dàng tương thích với các cấu trúc dữ liệu Python như từ điển và danh sách. Do đó, bạn có thể sử dụng Python Mongodb Connection một cách hiệu quả

Bài viết này sẽ giúp bạn hiểu sự cần thiết của Python MongoDB Connection và các phương pháp khác nhau để thiết lập nó. Bạn sẽ thiết lập Kết nối Python MongoDB bằng Flask. Vậy hãy bắt đầu

Mục lục

Flask là gì?

Python MongoDB Connection - Flask LogoNguồn hình ảnh

Python Flask là API Python, một khung web cho phép người dùng xây dựng các ứng dụng web một cách dễ dàng. Khung web là tập hợp các thư viện và mô-đun giúp các nhà phát triển xây dựng ứng dụng. Tương tự, Flask là một khung web được viết bằng Python dựa trên bộ công cụ WSGI Werkzeug và công cụ mẫu Jinja2

WSGI là viết tắt của Web Server Gateway Interface và được sử dụng làm tiêu chuẩn cho các ứng dụng web Python. Nó hoạt động như một giao diện chung giữa máy chủ web và ứng dụng web. Werkzeug là một bộ công cụ thực hiện các yêu cầu, phản hồi và các chức năng tiện ích, trong khi mẫu Jinja2 là một thư viện Python để xây dựng các mẫu

Kết nối Python MongoDB bằng Flask là gì?

MongoDB là một cơ sở dữ liệu không có cấu trúc và NoSQL, nơi dữ liệu được lưu trữ trong các tài liệu và bộ sưu tập. Ngược lại, Flask là một khung web của Python và cho phép người dùng tạo các ứng dụng web. Nếu bạn tạo một ứng dụng web với sự trợ giúp của Flask và bạn muốn lưu trữ dữ liệu phi cấu trúc của người dùng trang web như tên, địa chỉ, email-d, số điện thoại, v.v. , trên Đám mây, bạn có thể sử dụng MongoDB

Hơn nữa, trong bài viết này, bạn sẽ khám phá 3 phương pháp để thiết lập Python MongoDB Connection bằng Flask. Bạn đang chờ đợi điều gì?

Đơn giản hóa MongoDB ETL & Phân tích dữ liệu với Đường ống dữ liệu không mã của Hevo

Hevo Data, Đường ống dữ liệu không mã, giúp tải dữ liệu từ bất kỳ nguồn dữ liệu nào, chẳng hạn như Cơ sở dữ liệu, ứng dụng SaaS, Lưu trữ đám mây, SDK, s và Dịch vụ truyền phát, đồng thời đơn giản hóa quy trình ETL. Nó hỗ trợ MongoDB và hơn 100 nguồn dữ liệu khác bao gồm hơn 40 nguồn miễn phí. Đó là quy trình gồm 3 bước chỉ bằng cách chọn nguồn dữ liệu, cung cấp thông tin xác thực hợp lệ và chọn đích đến.  

Hevo tải dữ liệu vào Kho dữ liệu/điểm đến mong muốn trong thời gian thực. Kiến trúc đường ống hoàn toàn tự động, khả năng chịu lỗi và khả năng mở rộng của nó đảm bảo rằng dữ liệu được xử lý một cách an toàn, nhất quán mà không làm mất dữ liệu và hỗ trợ các dạng dữ liệu khác nhau

BẮT ĐẦU VỚI HEVO MIỄN PHÍ

Kiểm tra lý do tại sao Hevo là tốt nhất

  • Chắc chắn. Hevo có kiến ​​trúc chịu lỗi đảm bảo dữ liệu được xử lý an toàn và nhất quán mà không làm mất dữ liệu
  • Quản lý lược đồ. Hevo loại bỏ nhiệm vụ quản lý lược đồ tẻ nhạt & tự động phát hiện lược đồ của dữ liệu đến và ánh xạ nó tới lược đồ đích
  • học tập tối thiểu. Hevo, với giao diện người dùng tương tác và đơn giản, cực kỳ đơn giản đối với khách hàng mới để làm việc và thực hiện các thao tác
  • Hevo được xây dựng để mở rộng quy mô. Khi số lượng nguồn và khối lượng dữ liệu của bạn tăng lên, Hevo sẽ mở rộng quy mô theo chiều ngang, xử lý hàng triệu bản ghi mỗi phút với rất ít độ trễ
  • Tải dữ liệu gia tăng. Hevo cho phép truyền dữ liệu đã được sửa đổi theo thời gian thực. Điều này đảm bảo sử dụng hiệu quả băng thông ở cả hai đầu
  • Hỗ trợ trực tuyến. Nhóm Hevo luôn sẵn sàng hỗ trợ đặc biệt cho khách hàng của mình thông qua trò chuyện, email và các cuộc gọi hỗ trợ
  • Giám sát trực tiếp. Hevo cho phép bạn theo dõi luồng dữ liệu và kiểm tra xem dữ liệu của bạn đang ở đâu tại một thời điểm cụ thể

Đơn giản hóa Phân tích dữ liệu của bạn với Hevo ngay hôm nay.  

ĐĂNG KÝ TẠI ĐÂY ĐỂ DÙNG THỬ MIỄN PHÍ 14 NGÀY

Làm cách nào để kết nối Flask với Python MongoDB Connection trên các ứng dụng khác nhau?

Bạn thiết lập Python MongoDB Connection sử dụng Flask theo các cách sau

1) Kết nối Python MongoDB. Kết nối Flask với MongoDB Cloud

Để kết nối Flask với đám mây MongoDB, bạn cần làm theo các bước dưới đây

  • Tạo một tài khoản MongoDB miễn phí như hình bên dưới
Python MongoDB Connection - Create MongoDB Free AccountNguồn hình ảnh
  • Chọn nhà cung cấp đám mây của bạn. MongoDB cung cấp các dịch vụ Đám mây như AWS, Azure và Google Cloud. Bạn phải chọn dịch vụ miễn phí. Nếu bạn có MongoDB premium, bạn có thể chọn cái đó. Nhấp vào Nhà cung cấp đám mây và khu vực đã chọn như hình bên dưới
Python MongoDB Connection - Choose the cloud serviceNguồn hình ảnh
  • Nhấp vào Tạo cụm
  • Kết nối cơ sở dữ liệu với đám mây. Sau khi tạo một cụm, bạn cần kết nối cơ sở dữ liệu với nó. Bấm vào tùy chọn kết nối như hình bên dưới
Python MongoDB Connection - Connect to the clusterNguồn hình ảnh
  • Thiết lập kết nối. Bạn có thể sử dụng địa chỉ IP để kết nối hoặc sử dụng tùy chọn Truy cập từ mọi nơi. Bạn cần kết nối cơ sở dữ liệu MongoDB bằng tên người dùng và mật khẩu
Python MongoDB Connection - Create Database UserNguồn hình ảnh

Bạn cần nhớ tên người dùng và mật khẩu mỗi khi kết nối với cơ sở dữ liệu

  • Chọn loại kết nối. Bạn cần kết nối cơ sở dữ liệu với ứng dụng web bạn đang sử dụng. Nhấp vào tùy chọn kết nối ứng dụng của bạn như hình bên dưới
Python MongoDB Connection - Choose connection methodNguồn hình ảnh
  • Khi bạn nhấp vào tùy chọn kết nối ứng dụng của bạn, bạn phải chỉ định ngôn ngữ Python và phiên bản của ngôn ngữ đó từ trình đơn thả xuống, như minh họa bên dưới
Python MongoDB Connection - Select driver and versionNguồn hình ảnh

Từ phía trên, bạn phải chọn hộp kiểm 'bao gồm ví dụ về mã trình điều khiển đầy đủ' và cập nhật mật khẩu và người dùng root theo hệ thống của bạn. Để kết nối Flask với cơ sở dữ liệu MongoDB, bạn phải sử dụng mã trình điều khiển đầy đủ

  • Duyệt các bộ sưu tập trong MongoDB Cloud. Khi cơ sở dữ liệu được kết nối, bạn có thể nhấp vào các tùy chọn duyệt bộ sưu tập bên dưới
Python MongoDB Connection - Browse CollectionsNguồn hình ảnh
  • Đặt tên cho cơ sở dữ liệu và bộ sưu tập. Khi bạn bấm vào các tùy chọn Duyệt bộ sưu tập, nó sẽ hiển thị hình ảnh bên dưới
Python MongoDB Connection - Load sample datasetNguồn hình ảnh
  • Bạn có thể tải tập dữ liệu mẫu do MongoDB cung cấp hoặc thêm dữ liệu giành được của bạn vào cơ sở dữ liệu từ bên trên. Sau khi bạn thêm dữ liệu, bạn có thể thấy hình ảnh sau
Python MongoDB Connection - Create the databaseNguồn hình ảnh
  • Thêm tên cơ sở dữ liệu và tên bộ sưu tập như hình trên

Bây giờ bạn đã tạo thành công một cụm và kết nối nó với cơ sở dữ liệu. Bây giờ bạn cần kết nối Python với cơ sở dữ liệu trên. Để kết nối Flask với cơ sở dữ liệu MongoDB, bạn sẽ cài đặt và sử dụng thư viện pymongo. Nó cho phép người dùng kết nối MongoDB với Flask

  • Bạn phải cài đặt pymongo bằng lệnh sau
pip install pymongo
  • Sau khi cài đặt pymongo, hãy thực hiện một số thao tác. Để làm được điều đó, bạn cần nhập mô-đun Flask và pymongo và dán mã trình điều khiển máy khách MongoDB. Cuối cùng, gán một cơ sở dữ liệu và bộ sưu tập cho nó
  • Bạn sẽ cần một trang web HTML có biểu mẫu để lấy thông tin chi tiết của người dùng để hiển thị các ứng dụng Flask. Nó cũng nên có các tệp CSS và JS trong đó
Python MongoDB Connection - Import flask packagesNguồn hình ảnh

Ứng dụng Flask ở trên bao gồm tệp HTML. Bạn cũng phải định cấu hình cơ sở dữ liệu và tên bộ sưu tập cho nó

Có hai cú pháp để khởi tạo bộ sưu tập và cơ sở dữ liệu

  • cơ sở dữ liệu
Python MongoDB Connection - Database syntaxNguồn hình ảnh
  • Bộ sưu tập
Python MongoDB Connection - Collection syntaxNguồn hình ảnh
  • Để chèn dữ liệu mới vào cơ sở dữ liệu, bạn có thể sử dụng thuộc tính chèn i. e. , clt. insert_one() hoặc clt. chèn_many(). Bạn có thể tham khảo bộ lệnh sau
Python MongoDB Connection - Insert new data in databaseNguồn hình ảnh
  • Để đọc dữ liệu, bạn có thể sử dụng thao tác find() ở trên
  • Để cập nhật bất kỳ dữ liệu nào trong cơ sở dữ liệu, update() được sử dụng cùng với $set. $set được sử dụng tập hợp dữ liệu sẽ được cập nhật. Bạn có thể tham khảo bộ sưu tập mã sau
Python MongoDB Connection - Update data in databaseNguồn hình ảnh

Bạn có thể thấy cả thao tác cập nhật và xóa trong Flask từ phía trên. Để xóa dữ liệu khỏi cơ sở dữ liệu, bạn có thể sử dụng bộ sưu tập delete_one hoặc delete_many

2) Kết nối Python MongoDB. Kết nối Flask với MongoDB Shell

Trong phương pháp này, bạn sẽ thiết lập Python MongoDB Connection bằng MongoDB Shell. Thực hiện theo các bước bên dưới để tiếp tục với Kết nối Python MongoDB

  • Tải xuống MongoDB từ Cộng đồng MongoDB. Bạn sẽ cần thư viện pymongo, kết nối MongoDB với Flask
  • Cài đặt thư viện Flask và Flask-pymongo bằng các lệnh bên dưới
Python MongoDB Connection - Install FlaskNguồn hình ảnh
  • Bạn phải tạo thư mục của ứng dụng web và tạo một tệp có tên 'ứng dụng. py’, sẽ có tất cả mã liên quan đến jar và Python
  • Nhập tất cả các mẫu cần thiết vào ứng dụng. py thông qua lệnh sau
Python MongoDB Connection - Import packagesNguồn hình ảnh
  • Kết nối ứng dụng web với MongoDB bằng các lệnh bên dưới
Python MongoDB Connection - Connect Web App with MongoDBNguồn hình ảnh

Cơ sở dữ liệu có tên ‘mydb’ được tạo

  • Tạo một biểu mẫu HTML sẽ lấy dữ liệu từ người dùng và lưu trữ nó trong cơ sở dữ liệu MongoDB. Đặt mã HTML vào thư mục mẫu của thư mục ứng dụng web. Mã HTML như sau
Python MongoDB Connection - Create HTML formNguồn hình ảnh
  • Bạn phải viết đoạn mã dưới đây để hiển thị tệp HTML bằng Flask
Python MongoDB Connection - Render HTML using FlaskNguồn hình ảnh
  • Chèn dữ liệu vào cơ sở dữ liệu ‘mydb’. Bạn có thể chèn nó bằng các lệnh dưới đây
Python MongoDB Connection - Insert data into mydb databaseNguồn hình ảnh
  • Bạn có thể chèn dữ liệu thông qua ứng dụng web Flask, như hình bên dưới
Python MongoDB Connection - Insert data into flask webappNguồn hình ảnh
  • Bạn có thể sử dụng phương thức find() để đọc dữ liệu trong cơ sở dữ liệu. Phương thức find() lưu con trỏ vào biến khách hàng rồi đưa biến này vào tệp kết xuất HTML. Bạn có thể sử dụng đoạn mã sau để hiển thị dữ liệu ở định dạng bảng trên ứng dụng web Flask
Python MongoDB Connection - Show data in table formatNguồn hình ảnh
  • Trong hướng dẫn này, mẫu jinja được sử dụng để truy xuất dữ liệu ứng dụng Flask. Để lưu trữ nhiều tài liệu ở định dạng bảng và hàng, vòng lặp 'for' được sử dụng. Ứng dụng Flask hiển thị đầu ra sau
Python MongoDB Connection - flask webapp table dataNguồn hình ảnh
  • Để xóa bản ghi khỏi ứng dụng web Flask, bạn có thể sử dụng phương thức remove() để xóa tất cả dữ liệu và bộ sưu tập. Sử dụng lệnh bên dưới để xóa tất cả bộ sưu tập và dữ liệu
Python MongoDB Connection - Delete Collection and DataNguồn hình ảnh

Sau khi xóa tất cả dữ liệu và bộ sưu tập, bạn có thể thấy đầu ra bên dưới

Python MongoDB Connection - Deleted data in Flask Web APpNguồn hình ảnh

3) Kết nối Python MongoDB. Kết nối Flask với MongoDB Compass

Để thiết lập Kết nối Python MongoDB bằng Flask với MongoDB Compass, hãy làm theo các bước dưới đây

  • Bạn phải kiểm tra phiên bản Python. Trăn 3. 7 phiên bản được sử dụng trong hướng dẫn này
Python MongoDB Connection - Check python versionNguồn hình ảnh
  • Cài đặt Flask bằng lệnh bên dưới
Python MongoDB Connection - Install Flask in MongoDB CompassNguồn hình ảnh
  • Cài đặt cơ sở dữ liệu MongoDB Compass thông qua MongoDB Compass. Bạn có thể thấy các cơ sở dữ liệu có tên local, admin và config được tạo tự động trong quá trình cài đặt, như hình bên dưới
Python MongoDB Connection - MongoDB Compass DatabaseNguồn hình ảnh
  • Cài đặt thư viện Pymongo trong Python
pip install pymongo
  • Bạn cần cài đặt thư viện bson để kích hoạt thuộc tính objectID của tài liệu MongoDB
pip install bson
  • Tạo một thư mục có tên FlaskwithMongo cùng với hai thư mục con, tĩnh và mẫu. Tạo một tệp mới có tên là ứng dụng. py. Nó sẽ có kết nối mã Python với ứng dụng web
  • Nhập các thư viện sau vào ứng dụng
Python MongoDB Connection - Import libraries in MongoDB CompassNguồn hình ảnh
  • Khai báo biến ứng dụng sẽ được sử dụng trong toàn bộ ứng dụng bằng lệnh bên dưới
app = Flask(__name__)
  • Khai báo hai biến sau, sẽ sử dụng trong mẫu jinja
Python MongoDB Connection - Declare variablesNguồn hình ảnh
  • Khai báo chuỗi kết nối cho MongoDB, sau đó chọn cơ sở dữ liệu và tên bộ sưu tập
Python MongoDB Connection - Set up connection stringNguồn hình ảnh
  • MongoDB đang chạy trên cổng 27017 theo mặc định. Ở trên, 'mymongodb' là tên cơ sở dữ liệu và 'việc cần làm' là tên bộ sưu tập. Trong Flask, bạn sử dụng render_template, request, redirect và url_for để thiết lập chuyển hướng và hiển thị các mẫu HTML trong trình duyệt như được hiển thị trong các lệnh bên dưới
Python MongoDB Connection - Establish redirection 1Nguồn hình ảnhPython MongoDB Connection - Establish redirection 2Nguồn hình ảnh
  • Trong đoạn mã trên, một phương thức tác vụ được sử dụng cho các tuyến đường, tôi. e. , các tuyến đường mặc định và chưa hoàn thành. Biến todos_l được sử dụng để lấy tài liệu từ MongoDB với điều kiện done là không. Biến a2 được sử dụng để kiểm soát các bản ghi đang hoạt động. Ngoài ra, todo_l, a2, tiêu đề và tiêu đề được chuyển đến mẫu jinja của chỉ mục. html mà bạn cần tạo trong thư mục mẫu

Cũng giống như trên, bạn cần đặt lộ trình cho tất cả các hoạt động khác. ứng dụng. tệp py bao gồm các lệnh bên dưới

Python MongoDB Connection - app_py file1Nguồn hình ảnhPython MongoDB Connection - app_py file2Nguồn hình ảnhPython MongoDB Connection - app_py file3Nguồn hình ảnhPython MongoDB Connection - app_py file4Nguồn hình ảnh
  • Thêm các tệp HTML bên dưới vào thư mục mẫu

mục lục. html

Python MongoDB Connection - index_html file1Nguồn hình ảnhPython MongoDB Connection - index_html file2Nguồn hình ảnhPython MongoDB Connection - index_html file3Nguồn hình ảnhPython MongoDB Connection - index_html file4Nguồn hình ảnh

danh sách tìm kiếm. html

Python MongoDB Connection - searchlist_html file1Nguồn hình ảnhPython MongoDB Connection - searchlist_html file2Nguồn hình ảnh

cập nhật. html

Python MongoDB Connection - update_html file1Nguồn hình ảnhPython MongoDB Connection - update_html file2Nguồn hình ảnh
  • Thêm các tệp CSS và js sau vào thư mục tĩnh/nội dung

biểu tượng cảm xúc. css

Python MongoDB Connection - emoji_css fileNguồn hình ảnh

biểu tượng cảm xúc. js

Python MongoDB Connection - emoji_js fileNguồn hình ảnh

phong cách. css

Python MongoDB Connection - style_css file1Nguồn hình ảnhPython MongoDB Connection - style_css file2Nguồn hình ảnhPython MongoDB Connection - style_css file3Nguồn hình ảnh
  • Thêm hai hình ảnh, vâng. png và không. png, vào thư mục tĩnh/hình ảnh. Bây giờ bạn có thể chạy ứng dụng
  • Bắt đầu MongoDB bằng lệnh bên dưới
"C:Program FilesMongoDBServer4.0binmongod.exe" --dbpath="C:mongo-data"
  • Mở một thiết bị đầu cuối khác trong ứng dụng Python và gõ lệnh bên dưới
python app.py

Nó sẽ hiển thị đầu ra bên dưới

Python MongoDB Connection - Run ApplicationNguồn hình ảnh

Ứng dụng sẽ chạy thành công

Python MongoDB Connection - Application running successfullyNguồn hình ảnh
  • Thêm một tác vụ có tên Tác vụ kiểm tra cho MongoDB với ứng dụng bình. Viết 'mô tả mẫu' trong tab mô tả, thêm ngày là '05-08-2018' và mức độ ưu tiên là 'cao' và nhấp vào nút tạo
Python MongoDB Connection - Add TaskNguồn hình ảnh
  • Tạo cơ sở dữ liệu MongoDB có tên là 'mymongodb' trong MongoDB Compass. Trong cơ sở dữ liệu mymongodb, bạn có thể xem chi tiết tài liệu được đề cập ở bước trước. Do đó, tài liệu được thêm vào cơ sở dữ liệu MongoDB bằng ứng dụng web Flask, như thể hiện trong hình trên

Phần kết luận

Trong hướng dẫn này, bạn đã làm quen với Python MongoDB Connection bằng ứng dụng Flask. Hướng dẫn giải thích dịch vụ MongoDB Cloud trực tuyến và MongoDB Compass với Flask. Các thao tác như tạo, xóa, đọc và cập nhật được thực hiện trên Python MongoDB Connection. Bạn có thể khám phá thêm về thư viện pymongo, nơi kết nối MongoDB với Flask

Tuy nhiên, với tư cách là Nhà phát triển, việc trích xuất dữ liệu phức tạp từ một tập hợp nguồn dữ liệu đa dạng vào Cơ sở dữ liệu MongoDB của bạn có vẻ khá khó khăn. Đây là nơi một giải pháp thay thế đơn giản hơn như Hevo có thể giúp bạn tiết kiệm thời gian. Dữ liệu Hevo là Đường ống dữ liệu không mã cung cấp cách nhanh hơn để di chuyển dữ liệu từ hơn 100 nguồn dữ liệu như MongoDB và hơn 40 nguồn miễn phí khác vào Kho dữ liệu của bạn để được hiển thị trong công cụ BI. Hevo hoàn toàn tự động và do đó không yêu cầu bạn viết mã

HÃY THAM QUAN TRANG WEB CỦA CHÚNG TÔI ĐỂ KHÁM PHÁ HEVO

Bạn muốn thử Hevo?

ĐĂNG KÝ và tận tay trải nghiệm bộ Hevo giàu tính năng. Bạn cũng có thể xem giá cạnh tranh nhất sẽ giúp bạn chọn gói phù hợp cho nhu cầu kinh doanh của mình

Làm cách nào để kết nối với MongoDB bằng tên người dùng và mật khẩu?

Cách bảo mật MongoDB bằng tên người dùng và mật khẩu .
Bước 1. Đăng nhập vào máy chủ MongoDB. Bước đầu tiên là đăng nhập vào máy chủ của bạn. .
Bước 2. Thay đổi cơ sở dữ liệu quản trị. .
Bước 3. Tạo người dùng quản trị viên. .
Bước 4. MongoDB Kích hoạt xác thực

Làm cách nào để chuyển tên người dùng và mật khẩu trong MongoClient Python?

quote_plus('người dùng') >>> tên người dùng 'người dùng' >>> mật khẩu = urllib. phân tích cú pháp. quote_plus('pass/word') >>> mật khẩu 'pass%2Fword' >>> MongoClient('mongodb. //%S. %s@127. 0. 0. 1' % (tên người dùng, mật khẩu))

Làm cách nào để kết nối với MongoDB thông qua Python?

Để kết nối với MongoDB từ Ứng dụng Python, hãy làm theo hướng dẫn từng bước bên dưới. .
Cài đặt trình điều khiển Python – PyMongo. PyMongo chứa các công cụ để làm việc với MongoDB. .
Nhập MongoClient từ pymongo. .
Tạo kết nối đến MongoDB Daemon Service bằng MongoClient. .
MongoClient đã sẵn sàng. .
Đóng kết nối với MongoDB

PyMongo sử dụng phương thức xác thực nào?

Cơ chế xác thực mặc định . 0 của MongoDB và SCRAM-SHA-1 khi được kết nối với phiên bản gần đây MONGODB-CR when connected to a pre-3.0 version of MongoDB, and SCRAM-SHA-1 when connected to a recent version .