1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tài Liệu Phát Triển Ứng Dụng Tự Động Lấy Mã Hàng Và Thông Tin Người Mua Hàng Từ Comment.pdf

62 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Phát Triển Ứng Dụng Tự Động Lấy Mã Hàng Và Thông Tin Người Mua Hàng Từ Comment
Tác giả Triệu Kim Sơn, Lê Thanh Tài
Người hướng dẫn ThS. Đặng Nhân Cách
Trường học Trường Đại Học Giao Thông Vận Tải TP. Hồ Chí Minh
Chuyên ngành Công nghệ Thông Tin
Thể loại Báo cáo thực tập tốt nghiệp
Năm xuất bản 2020
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 62
Dung lượng 2,09 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • CHƯƠNG 1: GIỚI THIỆU (11)
    • 1.1 Động cơ thực hiện đề tài (11)
    • 1.2 Mục tiêu của đề tài (12)
    • 1.3 Giới hạn của đề tài (12)
    • 1.4 Cấu trúc của đề tài (13)
    • 1.5 Phương pháp nghiên cứu (13)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (14)
    • 2.1 Giới thiệu API (14)
    • 2.2 Tổng quan về Facebook (16)
      • 2.1.1 Nền tảng cho nhà phát triển của Facebook (17)
      • 2.1.2 Giới thiệu Facebook Graph-API (18)
        • 2.1.2.1 Nút (Node) (21)
        • 2.1.2.2 Trường (Field) (22)
        • 2.1.2.3 Cạnh (Edge) (22)
        • 2.1.2.4 HTTP và URL (23)
        • 2.1.2.5 Access Token (24)
        • 2.1.2.6 Kết quả Facebook trả về (25)
        • 2.1.2.7 Debugging (26)
      • 2.1.3 Get Access Token Facebook (27)
        • 2.1.3.1 Oauth 2.0 (27)
        • 2.1.3.2 Các cách lấy Access Token (27)
    • 2.3 Sử dụng Graph-API để lấy comments từ fanpage cá nhân (35)
  • CHƯƠNG 3: TRIỂN KHAI HỆ THỐNG (39)
    • 3.1 Lấy dữ liệu Comment (39)
    • 3.2 Giới thiệu dữ liệu (43)
    • 3.3 Tiền xử lý dữ liệu (45)
    • 3.4 Xử lý dữ liệu Comment (48)
      • 3.4.1 Giới thiệu (48)
      • 3.4.2 Quy trình lấy những comment đi trích lọc (48)
    • 3.5 Trích lọc các đặc trưng (50)
      • 3.5.1 Giải thuật trích lọc (50)
      • 3.5.2 Lấy mã hàng từ Comment (50)
      • 3.5.3 Lấy số lượng từ Comment (51)
      • 3.5.4 Lấy Email từ Comment (52)
      • 3.5.5 Lấy số điện thoại từ Comment (53)
    • 3.6 Kết quả dữ liệu sau khi được xử lý (53)
  • CHƯƠNG 4: XÂY DỰNG VÀ ĐÁNH GIÁ HỆ THỐNG (55)
    • 4.1 Giới thiệu (55)
    • 4.2 Cài đặt hệ thống (55)
    • 4.3 Kết quả (59)
    • 4.4 Đánh giá (59)
  • CHƯƠNG 5: KẾT LUẬN (60)
    • 5.1 Kết luận (60)
    • 5.2 Hướng mở rộng phát triển (60)
  • TÀI LIỆU THAM KHẢO (62)

Nội dung

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN THỰC TẬP TỐT NGHIỆP PHÁT TRIỂN ỨNG DỤNG TỰ ĐỘNG LẤY MÃ HÀNG VÀ THÔNG TIN NGƯỜI MUA HÀNG TỪ COMMENT Ngành Công nghệ thông tin C[.]

GIỚI THIỆU

Động cơ thực hiện đề tài

Khai thác tài nguyên mạng xã hội là một lĩnh vực quan trọng trong ngành công nghệ thông tin, giúp doanh nghiệp hiểu rõ thị trường và khách hàng Web 2.0 đã thúc đẩy sự phát triển của các nền tảng như blog, diễn đàn và mạng xã hội trực tuyến, nơi người dùng chia sẻ ý kiến về sản phẩm, tranh luận vấn đề và bày tỏ quan điểm chính trị Việc khai thác thông tin người dùng từ mạng xã hội đóng vai trò then chốt trong hệ thống đề xuất và marketing, hỗ trợ doanh nghiệp nhỏ lẻ quảng bá và bán hàng nhanh chóng và hiệu quả Các doanh nghiệp lớn và vừa cũng có thể tận dụng dữ liệu này để nắm bắt xu hướng tiêu dùng, tổ chức sự kiện và quản lý thông tin quan trọng Tuy nhiên, phân tích tự động các dữ liệu mạng xã hội để biến chúng thành thông tin hữu ích cho doanh nghiệp là một thách thức phức tạp đòi hỏi công nghệ cao và kỹ thuật chuyên môn.

Với sự phát triển vượt bậta của công nghệ, bảo vệ thông tin người dùng trở thành ưu tiên hàng đầu của các công ty điều hành mạng xã hội Các doanh nghiệp này cần thắt chặt chính sách về khai thác tài nguyên trên nền tảng của họ để đảm bảo quyền riêng tư và an toàn dữ liệu Tuy nhiên, những quy định mới này khiến việc khai thác và phân tích tài nguyên trở nên khó khăn hơn, đòi hỏi các nhà phát triển phải thích nghi và tìm ra giải pháp phù hợp.

Trong nghiên cứu này, nhóm phát triển phần mềm giúp thu thập bình luận từ fanpage của doanh nghiệp và phân tích để lọc ra những thông tin giá trị, hỗ trợ việc bán hàng online hiệu quả cho các doanh nghiệp nhỏ lẻ Việc này giúp các doanh nghiệp dễ dàng hiểu khách hàng, nâng cao khả năng tương tác và tối ưu chiến lược marketing trên mạng xã hội Đặc biệt, phần mềm giúp xác định các thông tin quan trọng từ bình luận để cải thiện dịch vụ khách hàng và thúc đẩy doanh số bán hàng trực tuyến.

Nhóm sẽ tập trung xử lý các thông tin quan trọng như số điện thoại, mã hàng, email và số lượng hàng đặt để quản lý đơn hàng hiệu quả Đồng thời, nhóm sẽ nghiên cứu và sử dụng các công cụ hỗ trợ miễn phí từ các nền tảng mạng xã hội nhằm tối ưu hóa hoạt động phát triển trên nền tảng của mình.

Dựa trên kết quả nghiên cứu, nhóm có khả năng mở rộng phạm vi sàng lọc các loại thông tin khác nhau trên mạng xã hội, bao gồm cả các nội dung đa dạng bằng nhiều ngôn ngữ khác nhau, nhằm nâng cao hiệu quả và độ chính xác của hệ thống phân tích dữ liệu trực tuyến.

Mục tiêu của đề tài

Mục tiêu của đề tài nghiên cứu là phát triển một ứng dụng tự động thu thập bình luận từ fanpage cá nhân trên mạng xã hội, giúp tiết kiệm thời gian và công sức Ứng dụng còn có khả năng lọc ra các thông tin quan trọng phục vụ cho hoạt động bán hàng online như mã hàng, số điện thoại, email và số lượng hàng đặt, nâng cao hiệu quả kinh doanh trực tuyến Việc xây dựng hệ thống này nhằm tối ưu hóa quá trình quản lý đơn hàng, giảm thiểu sai sót và tăng doanh thu cho các nhà bán hàng trên mạng xã hội.

Việc lấy comments tự động có nhiều cấp độ như sau:

Cấp độ 1: Sử dụng API của nhà cung cấp, người dùng phải cung cấp access token và các thông tin cần thiết khác

Cấp độ 2: Sử dụng API của nhà cung cấp và tự động lấy access token bằng việc đăng nhập vào tài khoản mạng xã hội

Cấp độ 3: Crawl thông tin của trang web lấy lấy thông tin comments từ đó Đối với nghiên cứu này, nhóm dừng lại ở cấp độ đầu tiên.

Giới hạn của đề tài

Các giới hạn của đề tài được đề cập sau đây:

• Tập trung vào lấy comment của mạng xã hội Facebook

• Sử dụng các công cụ, API mà Facebook cung cấp để lấy được các comments từ fanpage

• Tập trung vào lấy comment của fanpage cá nhân

• Phân tích comments để lấy ra được các thông tin có ích cho việc bán hàng online.

Cấu trúc của đề tài

Chương 1 giới thiệu về động cơ thực hiện dự án, mục tiêu chính của nghiên cứu và phạm vi giới hạn của đề tài Các phần tiếp theo của đề tài sẽ được trình bày theo trình tự logic nhằm làm rõ các nội dung và phương pháp nghiên cứu, đảm bảo phù hợp với các tiêu chuẩn SEO về từ khóa liên quan đến nghiên cứu và phân tích đề tài.

• Chương 2: Giới thiệu cơ sở lý thuyết và Facebook Graph-API dùng để thực hiện trong nghiên cứu và phát triển mô hình

• Chương 3: Triển khai hệ thống, hiện thực việc lấy comment từ Graph-

API của Facebook và những xử lý dữ liệu lấy về được để hiển thị trên giao diện sau đó xuất ra file CSV

• Chương 4: Cài đặt hệ thống, đánh giá kết quả chạy trên 300 comment và hiệu quả việc xử lý trên những comment lấy được

• Chương 5: Tổng kết, đánh giá và vạch hướng mở rộng cho tương lai của hệ thống.

Phương pháp nghiên cứu

Dựa trên các lý thuyết trong cuốn sách “Mining the Social Web 3rd Edition”, bài viết nhấn mạnh tầm quan trọng của việc phân tích dữ liệu mạng xã hội để hiểu rõ hơn về xu hướng và hành vi người dùng Đồng thời, việc tận dụng API đồ họa (Graph API) cùng các công cụ hỗ trợ chính thức giúp thu thập và xử lý dữ liệu một cách hiệu quả và chính xác hơn Sự kết hợp giữa lý thuyết và công cụ kỹ thuật số không chỉ nâng cao khả năng khai thác dữ liệu mà còn hỗ trợ xây dựng các báo cáo phân tích có giá trị, phù hợp với các chiến lược marketing và nghiên cứu thị trường hiện nay.

Facebook tạo ra để hỗ trợ cho các nhà phát triển

Bên cạnh đó nhóm còn sử dụng một số thư viện hỗ trợ miển phí để lập trình

CƠ SỞ LÝ THUYẾT

Giới thiệu API

Giao diện lập trình ứng dụng (API) là một giao diện hệ thống cho phép các chương trình máy tính gửi yêu cầu dịch vụ và trao đổi dữ liệu với nhau Các phần mềm như hệ điều hành, hệ thống đồ họa, cơ sở dữ liệu, mạng, dịch vụ web, và trò chơi máy tính đều sử dụng API để truy cập các chức năng và tài nguyên cần thiết API giúp các lập trình viên tạo ra các tính năng giao tiếp người-máy như menu kéo xuống, hộp thoại, lệnh bàn phím và cửa sổ, đồng thời hỗ trợ yêu cầu và thi hành các dịch vụ cấp thấp của hệ điều hành Nhờ API, người dùng tiết kiệm thời gian tìm hiểu các phần mềm mới, từ đó khuyến khích sử dụng nhiều ứng dụng hơn và nâng cao trải nghiệm người dùng.

API là phần mềm trung gian giúp hai ứng dụng giao tiếp với nhau một cách dễ hiểu và hiệu quả Khi bạn sử dụng các ứng dụng như Facebook để gửi tin nhắn hoặc kiểm tra thời tiết trên điện thoại, đó chính là lúc bạn đang sử dụng API API đóng vai trò quan trọng trong việc kết nối và trao đổi dữ liệu giữa các nền tảng, giúp trải nghiệm người dùng trở nên mượt mà và liền mạch hơn.

Khi sử dụng ứng dụng trên điện thoại di động, nó kết nối Internet để gửi dữ liệu đến máy chủ Máy chủ sẽ xử lý dữ liệu, thực hiện các hành động cần thiết và gửi phản hồi trở lại điện thoại Ứng dụng sau đó diễn giải dữ liệu và hiển thị thông tin theo cách dễ đọc để người dùng có thể thuận tiện tiếp nhận.

Hình 2 1: Hoạt động của API

Trong một nhà hàng, nhân viên phục vụ đóng vai trò như một API, nhận yêu cầu gọi món của khách hàng và truyền đạt tới bếp Sau khi món ăn sẵn sàng, nhân viên sẽ chuyển đồ ăn tới bàn, tạo thành một liên kết quan trọng trong quá trình phục vụ Tương tự, trong đặt vé máy bay trực tuyến, quá trình này thể hiện rõ qua việc khách hàng tương tác với trang web để truy cập dữ liệu về chuyến bay, ghế trống và giá cả, giống như một API giúp kết nối giữa khách hàng và hệ thống dữ liệu của hãng hàng không API đóng vai trò trung gian hiệu quả, giúp chuyển giao thông tin chính xác và nhanh chóng giữa các thành phần trong hệ thống dịch vụ.

Nếu không sử dụng trang web chính thức của hãng hàng không, bạn sẽ không có quyền truy cập trực tiếp vào thông tin chuyến bay, giá vé và các dịch vụ khác Khi sử dụng các dịch vụ du lịch trực tuyến như Kayak hoặc Expedia, việc truy cập dữ liệu của hãng hàng không có thể gặp hạn chế, do đó, để đảm bảo thông tin chính xác và cập nhật nhất, việc truy cập trực tiếp vào trang web của hãng là rất quan trọng.

Dịch vụ du lịch trực tuyến tương tác với API của hãng hàng không để lấy thông tin từ cơ sở dữ liệu của hãng API sẽ chuyển phản hồi của hãng hàng không đến yêu cầu của khách hàng và trả kết quả trở lại dịch vụ du lịch, giúp bạn nhận được thông tin cập nhật nhanh chóng và chính xác nhất.

Trong những năm qua, API thường được hiểu là giao diện kết nối chung cho các ứng dụng Tuy nhiên, hiện nay API hiện đại có những đặc điểm nổi bật giúp chúng trở nên hữu ích và có giá trị hơn, góp phần nâng cao hiệu quả tích hợp hệ thống và mở rộng khả năng của các ứng dụng trong nhiều lĩnh vực.

Các API hiện đại thường tuân thủ các tiêu chuẩn quốc tế như HTTP và REST, nhằm đảm bảo tính dễ sử dụng và dễ hiểu cho các nhà phát triển Những API này được thiết kế thân thiện, giúp tăng hiệu suất làm việc và tối ưu hóa quá trình phát triển phần mềm Việc tuân thủ các tiêu chuẩn này cũng giúp tăng khả năng mở rộng và tương thích của hệ thống.

API được xem như một sản phẩm hoàn chỉnh chứ không chỉ đơn thuần là đoạn mã, được thiết kế đặc biệt để phục vụ các đối tượng người dùng cụ thể như nhà phát triển ứng dụng di động, giúp tối ưu hóa quá trình tích hợp và nâng cao trải nghiệm người dùng.

Các hệ thống được chuẩn hóa tối ưu, mang lại tính bảo mật cao và khả năng quản trị mạnh mẽ hơn Nhờ đó, việc theo dõi, giám sát hoạt động và quản lý hiệu suất diễn ra dễ dàng, đồng thời mở rộng quy mô một cách hiệu quả.

API hiện đại có chu kỳ phát triển phần mềm (SDLC) riêng, bao gồm các giai đoạn thiết kế, thử nghiệm, xây dựng và quản lý nhằm đảm bảo tính linh hoạt và hiệu quả trong quá trình phát triển Việc tuân thủ quy trình này giúp tối ưu hóa hiệu suất và bảo trì API, đáp ứng nhanh chóng các yêu cầu thay đổi của môi trường công nghệ Do đó, hiểu rõ và áp dụng đúng các bước trong SDLC là yếu tố quan trọng để xây dựng API chất lượng cao, phù hợp với các tiêu chuẩn SEO hiện nay.

Tổng quan về Facebook

Facebook là một trong những mạng xã hội lớn nhất thế giới với hơn 1 tỷ người dùng hoạt động hàng ngày Người dùng thường xuyên cập nhật trạng thái, đăng bài viết, chia sẻ ảnh, trao đổi tin nhắn, trò chuyện trực tuyến, và check-in tại các địa điểm thực tế Ngoài ra, Facebook còn tích hợp các tính năng mua sắm và kết nối mọi thứ xung quanh một cách thuận tiện.

Lập trình viên Facebook có thể truy cập khối lượng lớn dữ liệu về cá nhân, nhóm và sản phẩm thông qua API của nền tảng Facebook cho phép người dùng kiểm soát quyền truy cập vào dữ liệu của họ để đảm bảo thông tin giá trị không bị khai thác trái phép Tuy nhiên, Facebook cũng đặt ra các quy tắc về quyền riêng tư nhằm bảo vệ người dùng khỏi việc lạm dụng dữ liệu cá nhân.

Hình 2 2: Chính sách mới của Facebook về việc truy vấn bình luận

Để truy cập dữ liệu của Facebook, người lập trình hoặc nhà nghiên cứu cần có ít nhất một tài khoản Facebook hoạt động còn hiệu lực Việc này đảm bảo quyền truy cập hợp pháp và thuận lợi vào dữ liệu cần thiết cho các dự án nghiên cứu hoặc phân tích.

2.1.1 Nền tảng cho nhà phát triển của Facebook

Facebook là một nền tảng vô cùng mạnh mẽ, có thể nói đây là nền tảng đầy đủ và được tổ chức tốt nhất về việc lưu trữ thông tin, cả về chiều rộng và chiều sâu

Trang mạng xã hội này có chiều rộng ấn tượng khi lượng người dùng hiện tại chiếm gần một phần tư dân số thế giới, mở rộng phạm vi tiếp cận toàn cầu Đồng thời, về chiều sâu, nền tảng này sở hữu kho dữ liệu phong phú, chứa đựng lượng thông tin khổng lồ về từng người dùng, giúp tăng cường khả năng cá nhân hóa và đề xuất nội dung phù hợp.

Để truy cập dữ liệu của Facebook, lập trình viên cần đăng ký một ứng dụng và sử dụng ứng dụng đó như một vé truy cập vào nền tảng dành cho nhà phát triển của Facebook Việc này giúp lập trình viên có thể lấy dữ liệu cần thiết một cách hợp pháp và bảo mật Tài khoản nhà phát triển và ứng dụng được xem là chìa khóa để khai thác dữ liệu từ Facebook hiệu quả và an toàn.

Việc truy cập dữ liệu của người dùng phụ thuộc vào sự cho phép của chính họ, đảm bảo quyền riêng tư và kiểm soát thông tin cá nhân Facebook đã ban hành các tài liệu chính sách về sử dụng nền tảng, yêu cầu các nhà phát triển tuân thủ nghiêm ngặt để đảm bảo an toàn và quyền lợi cho người dùng Chính sách này thường xuyên được cập nhật dựa trên diễn biến của cả nền tảng Facebook và tình hình thế giới, nhằm thích nghi với các yêu cầu mới về bảo mật và bảo vệ dữ liệu.

Hình 2 3: Facebook tạm dừng xác nhận ứng dụng cá nhân vì đại dịch COVID-

Ngoài các chính sách bắt buộc phải tuân thủ, nhà phát triển cần gửi ứng dụng của mình để Facebook kiểm tra trước khi tích hợp các dịch vụ như đăng nhập Facebook, tiếp thị, hoặc phát hành sản phẩm dành cho doanh nghiệp Quá trình kiểm duyệt này đảm bảo ứng dụng đáp ứng các yêu cầu về bảo mật và chất lượng của Facebook, đồng thời giúp duy trì trải nghiệm người dùng an toàn và tin cậy Vì vậy, việc nộp ứng dụng để kiểm tra là bước thiết yếu trong quá trình phát triển và triển khai các giải pháp trên nền tảng Facebook.

2.1.2 Giới thiệu Facebook Graph-API

Trước hết Facebook coi các mối quan hệ giữa các thực thể như là một "Đồ thị xã hội" (Social Graph)

Hình 2 4: Đồ thị xã hội

Graph-API là cấu trúc dữ liệu dạng đồ thị khổng lồ mô tả các tương tác xã hội, gồm các nút (node) đại diện cho các đối tượng hoặc người dùng, và các cạnh (edge) thể hiện mối quan hệ hoặc tương tác giữa chúng Đây là công cụ mạnh mẽ giúp quản lý và phân tích dữ liệu xã hội một cách trực quan và hiệu quả.

Facebook Graph API là phương pháp chính để truy xuất hoặc tải dữ liệu vào nền tảng Facebook Đây là API dựa trên giao thức HTTP, cho phép các ứng dụng thực hiện các hoạt động như truy vấn dữ liệu, đăng bài mới, quản lý quảng cáo, tải ảnh lên và thực hiện nhiều tác vụ khác theo lập trình.

Hình 2 5: Mô hình lấy dữ liệu từ Facebook Graph-API

Graph API được đặt tên theo ý tưởng của một "đồ thị xã hội" - một đại diện của các thông tin trên Facebook bao gồm:

• node (nút): Một cách cơ bản là những "thứ" người ta sử dụng, một hình ảnh, một trang, một nhận xét trong Facebook

Edge, hay còn gọi là cạnh, đề cập đến các kết nối giữa các thành phần trong hệ thống, chẳng hạn như liên kết giữa hình ảnh và trang chứa hình ảnh đó hoặc giữa một ghi chú và bức ảnh đã ghi chú Các cạnh này giúp tạo thành mối liên kết logic và nâng cao khả năng tổ chức nội dung, từ đó cải thiện trải nghiệm người dùng và tối ưu hóa công cụ tìm kiếm SEO Việc hiểu rõ về các cạnh trong cấu trúc dữ liệu hoặc hệ thống nội dung là rất quan trọng để xây dựng các trang web và nội dung hiệu quả, hỗ trợ việc phân loại và truy tìm thông tin dễ dàng hơn.

• field (trường/lĩnh vực): Thông tin về những "thứ", chẳng hạn như ngày sinh nhật của người sử dụng, hoặc tên của một trang

Để làm quen với Graph-API, Facebook đã cung cấp trình khám phá API đồ thị (Graph API Explorer), giúp nhà phát triển thử nghiệm các lệnh gọi API một cách dễ dàng Công cụ này cho phép người dùng kiểm thử các câu lệnh API và xem trực tiếp kết quả trả về, hỗ trợ quá trình phát triển và tối ưu hóa ứng dụng hiệu quả hơn.

Hình 2 6: Giao diện của trình khám phá API đồ thị của Facebook

Node là những đối tượng riêng biệt Nói cách khác là những "thứ" người ta sử dụng, một hình ảnh, một trang, một nhận xét trong Facebook Để có thể truy vấn đến một đối tượng trên Graph-API, trường (field ) ID phải được cung cấp

Hình 2 7: Truy vấn đối tượng sử dụng trình khám phá API đồ thị

Trường dữ liệu là thông tin mô tả một đối tượng, chẳng hạn như ngày sinh nhật hoặc tên của một trang web Các trường này có thể được truy cập và chỉnh sửa thông qua các tham số truy vấn, giúp người dùng dễ dàng lấy và cập nhật thông tin cần thiết một cách linh hoạt và hiệu quả.

Hình 2 8: Truy vấn đến trường friend của đối tượng

Cạnh là liên kết giữa của tập hợp đối tượng với một đối tượng chẳng hạn như kết nối giữa hình ảnh và trang chứa ảnh đó, hoặc một ghi chú và bức ảnh được ghi chú đó

Có thể dùng cạnh để lấy tập hợp các đối tượng trên một đối tượng

Hình 2 9: Truy vấn đến trường friend đối tượng gốc và trường like của những đối tượng trong trường friend của đối tượng gốc

Lưu ý: việc truy vấn như trên có thể không còn sử dụng được do những thay đổi về chính sách của Facebook

API đồ thị dựa trên giao thức HTTP nên API này hoạt động với bất kỳ ngôn ngữ nào có thư viện HTTP

Sử dụng Graph-API để lấy comments từ fanpage cá nhân

Để lấy comments từ API, bạn cần có access token, có thể lấy nó từ hai cách đã đề cập Trong bài viết này, nhóm đã sử dụng phương pháp lấy access token thông qua trình khám phá API đồ thị để đảm bảo truy cập dữ liệu một cách nhanh chóng và chính xác.

Hình 2 32: Chọn quyền quản lí page

Hình 2 33: Chọn page để cho phép sử dụng

Hình 2 34: Cho phép ứng quản lí page

Tiếp theo chúng ta cần id của trang cá nhân và id của post mà mình cần muốn lấy comment

Id của post cũng có thể được lấy ở URL của post

Khi có được id của page và post, chúng ta chỉ cần gửi một yêu cầu HTTP

GET đến graph API có dạng https://graph.facebook.com/{page id}_{post id}?fields=comments&access_token={access token}

Hình 2 37: Kết quả json của yêu cầu HTTP GET

Khi thành công, Graph API trả về kết quả dạng JSON, nhưng các ký tự UTF-8 trong JSON lại bị mã hóa sang định dạng Latin-1 Để có thể xử lý dữ liệu JSON chính xác, bạn cần sử dụng một thư viện giải mã phù hợp, giúp chuyển đổi các ký tự này về dạng gốc Việc này đảm bảo dữ liệu JSON hiển thị đúng và tránh lỗi trong quá trình phân tích dữ liệu.

TRIỂN KHAI HỆ THỐNG

Lấy dữ liệu Comment

Sau vụ kiện bảo mật người dùng liên quan đến Cambridge Analytica năm 2019, Facebook đã tăng cường các điều khoản bảo vệ thông tin người dùng, khiến việc lấy comment từ các bài đăng riêng biệt hoặc comment trên fanpage của người khác trở nên khó khăn hơn Tuy nhiên, nền tảng vẫn cho phép lấy dữ liệu comment từ chính fanpage của cá nhân hoặc doanh nghiệp Do đó, nhóm tập trung vào phát triển ứng dụng để thu thập dữ liệu comment từ fanpage riêng của người dùng, phù hợp với đề tài tự động lấy mã đăng ký khách hàng từ các fanpage bán hàng online của chủ thể cá nhân, nhằm nâng cao hiệu quả quản lý và marketing.

Để lấy dữ liệu từ fanpage và bài viết, bạn cần phải xác định đúng ID của page và post Việc này giúp ứng dụng có thể truy xuất thông tin chính xác Để lấy ID, bạn chỉ cần nhấn vào thời gian đăng bài nằm dưới tiêu đề bài viết để hiển thị URL chứa thông tin ID của page và post.

Hình 3 1: Thời gian đăng lên của Post [7]

Khi đó trình duyệt sẽ chuyển qua trang khác và trên URL của trang đó có id của page và của post mà lấy comment về

Hình 3 2: URL có chứa id

Trong quá trình lấy access token, do ảnh hưởng của dịch COVID-19 khiến Facebook tạm thời ngừng xét duyệt sản phẩm cá nhân, việc đăng nhập qua ứng dụng để lấy token trở nên không khả thi Tuy nhiên, Facebook vẫn cho phép thử nghiệm access token thông qua trình khám phá API, vì vậy ứng dụng sẽ sử dụng cách này để truy xuất dữ liệu Đầu tiên, nhóm cần tạo một ứng dụng trên trang nhà phát triển Facebook (developers.facebook.com/) để có thể sử dụng các dịch vụ của Facebook một cách hợp lệ.

Hình 3 3: Tạo ứng có tên là Get_comment

Tiếp theo nhóm truy cập vào trang trình khám phá API đồ thị (developers.facebook.com/tools/explorer/) của facebook để tạo access token

Sau khi tạo xong, nhóm sẽ copy và lưu lại sử dụng cho việc lấy dữ liệu

Once you have the fanpage ID, post ID, and group access token, you can create an HTTP GET request to graph.facebook.com with these parameters This request retrieves the comments on the specified post efficiently Properly utilizing these credentials enables seamless access to post comment data via Facebook's Graph API.

Hình 3 5: HTTP GET request để lấy dữ liệu

Đầu tiên, nhóm cần tự tạo một fanpage trên Facebook để giả lập dữ liệu cần thiết Sau đó, nhóm đăng một bài viết lên fanpage đó nhằm thu thập dữ liệu dưới dạng JSON thuần Dữ liệu này sẽ được lưu tạm thời trong ứng dụng để xử lý và phân tích tiếp theo.

Bài đăng sẽ gồm cú pháp của một bình luận hợp lệ để đặt hàng trên fanpage, giúp khách hàng dễ dàng xác định cách đặt mua hàng đúng và chính xác Điều này đảm bảo rằng tất cả khách hàng muốn mua hàng có thể bình luận đúng theo yêu cầu của bài đăng, tránh nhầm lẫn và thất lạc đơn hàng Việc sử dụng cú pháp chuẩn giúp người bán hàng dễ dàng quản lý các đơn đặt hàng trên Facebook, nâng cao trải nghiệm mua sắm cho khách hàng.

Ban đầu, nhóm cần ít bình luận để xử lý dữ liệu trong quá trình lập trình và kiểm thử Sau đó, nhóm cần nhiều bình luận hơn để kiểm tra độ chính xác và tốc độ của hệ thống, vì vậy nhóm đã gửi link bài viết cho bạn bè để nhờ giúp bình luận, nhằm thu thập đủ dữ liệu cần thiết Việc nhờ bạn bè bình luận không chỉ giúp đánh giá hoạt động của hệ thống một cách hiệu quả mà còn tận dụng tốc độ truyền tải thông tin nhanh chóng trên mạng xã hội ngày nay.

Chia sẻ nội dung cùng bạn bè giúp tiết kiệm thời gian và tăng khả năng thu về hàng trăm, thậm chí nhiều hơn nữa các phản hồi Nhóm có thể dễ dàng kiểm thử hệ thống bằng cách xử lý hàng trăm bình luận và mở rộng hơn nữa quy mô thử nghiệm để đảm bảo hiệu quả.

Giới thiệu dữ liệu

Bộ dữ liệu này được nhóm thu thập từ các bình luận trên fanpage Facebook do chính nhóm tạo ra để phân tích Các bình luận này được lấy từ nhiều người dùng tương tác và bình luận dưới các bài viết bán hàng đã đăng tải Quá trình này nhằm mục đích thu thập dữ liệu đa dạng để phục vụ cho phân tích sau này.

JSON (JavaScript Object Notation) là định dạng dữ liệu dạng văn bản phổ biến, dễ đọc và dễ viết, phù hợp để lưu trữ và trao đổi dữ liệu giữa các hệ thống Với cú pháp đơn giản và dễ dàng truy vấn hơn XML, JSON đang trở thành chuẩn phổ biến trong phát triển phần mềm và các ứng dụng web JSON là một kiểu dữ liệu trung gian, chủ yếu được sử dụng để vận chuyển thông tin giữa các thành phần của chương trình, giúp đảm bảo tính linh hoạt và hiệu quả trong xử lý dữ liệu.

Ban đầu, nhóm tự giả lập bình luận trong chính bài viết của mình, tạo ra khoảng 300 bình luận Trong số đó, có khoảng 200 bình luận phù hợp với quy ước do nhóm đề ra, trong khi còn lại khoảng 100 bình luận chưa đáp ứng đúng quy chuẩn ban đầu.

Các bình luận sai bao gồm những phản hồi không đúng với cú pháp ban đầu do nhóm quy định, hoặc sai cú pháp email, sai số điện thoại, sai mã hàng, gây ảnh hưởng đến quá trình xử lý dữ liệu và đảm bảo chính xác thông tin Việc duy trì bình luận đúng chuẩn giúp tăng hiệu quả quản lý dữ liệu và nâng cao trải nghiệm người dùng Chính vì vậy, cần tuân thủ đúng quy định về cú pháp để đảm bảo thông tin chính xác và giảm thiểu sai sót trong quá trình xử lý dữ liệu.

Những bình luận phù hợp với cú pháp do nhóm quy định đều được coi là bình luận hợp lệ Tuy nhiên, các bình luận chứa dữ liệu như số điện thoại, mã hàng, số lượng, email đặt sai vị trí vẫn được xem là hợp lệ theo quy định của nhóm Việc đảm bảo các bình luận đúng cú pháp và vị trí giúp duy trì tính xây dựng và hợp lệ của nội dung trong nhóm.

Dữ liệu sau khi sử dụng HTTP GET Request lấy về ở dạng json:

JSON có cú pháp đơn giản gồm hai phần chính là key và value, tương ứng với tên trường và giá trị của nó trong một bản ghi dữ liệu, giúp cấu trúc dữ liệu rõ ràng và dễ xử lý Tuy nhiên, dù đơn giản về mặt cú pháp, việc hiểu rõ cách cấu trúc và sử dụng JSON trong quản lý dữ liệu vẫn cần sự mổ xẻ kỹ lưỡng để đảm bảo hiệu quả trong lập trình và lưu trữ thông tin JSON thường được sử dụng rộng rãi trong các ứng dụng web và API nhờ tính linh hoạt và dễ đọc, giúp tối ưu hoá quá trình trao đổi dữ liệu giữa các hệ thống.

• Chuỗi JSON được bao lại bởi dấu ngoặc nhọn {}

• Các key, value của JSON bắt buộc phải đặt trong dấu nháy kép

• Nếu có nhiều dữ liệu (nhiều cặp key => value) thì ta dùng dấu phẩy (,) để ngăn cách

• Các key của Json được đặt chữ cái không dấu hoặc số, dấu _ và không có khoảng trắng

Cấu trúc dữ liệu Json khi lấy được từ Graph_API trả về:

• Kích thước mẫu bằng tất cả các bình luận trong bài đăng

• Mỗi một comment hay là một bộ dữ liệu gồm có 3 trường dữ liệu trả về:

“created_time”, “message” và “id” của chính bình luận đó.

Tiền xử lý dữ liệu

Để sử dụng hiệu quả dữ liệu JSON thuần Facebook trả về, cần phải giải mã dữ liệu từ dạng Latin-1 trở lại dạng ban đầu Nhóm chúng tôi sử dụng thư viện Newtonsoft để thực hiện quá trình thám mã này Việc giải mã dữ liệu giúp đảm bảo tính chính xác và khả năng xử lý dữ liệu hiệu quả hơn trong các ứng dụng của bạn.

Hình 3 6: Ví dụ thư viện newtonson

Nội dung mỗi comment lấy về được gồm có ba phần:

• “created_time”: thời gian lúc khách hàng comment vào bài viết

• “id”: id của bài viết + id của người bình luận

Hình 3 7: Ví dụ nội dung comment lấy về được

Dữ liệu comment facebook trả về sau khi được chuyển đổi về dạng chuẩn thì sẽ được lưu vào trong mảng

Mỗi bình luận sẽ được lưu lại thời gian, ID người dùng và nội dung bình luận để đảm bảo quản lý dữ liệu hiệu quả Tiếp theo, hệ thống sẽ xử lý nội dung bình luận để trích xuất các thông tin quan trọng như mã hàng, số lượng, địa chỉ email và số điện thoại Việc này giúp tối ưu quản lý đơn hàng và nâng cao trải nghiệm khách hàng một cách nhanh chóng và chính xác.

Những comment mà khách hàng coment trên facebook sẽ không tránh khỏi dữ liệu xuống dòng khi người dùng nhập

Ví dụ người dùng nhập:

Hình 3 8: Ví dụ người dùng nhập

Những comment như này nội dung xuống dòng lúc này Facebook gửi dữ liệu về sẽ được ở dạng \n

The data is transferred via an HTTP GET request, where the application uses the Regex library to filter out newline characters (\n) This process ensures that, after data processing, the content can be exported to a CSV file without causing misaligned or broken cells Implementing a line break removal with Regex.Replace(comment, "\n", " ") helps maintain data integrity and readability in the exported CSV.

Dữ liệu sau khi được xử lý

Hình 3 9: Ví dụ xử lý dữ liệu comment

Xử lý dữ liệu Comment

3.4.1 Giới thiệu Để lấy được thông tin khách hàng từ comment trên trang mạng xã hội Facebook hệ thống sẽ quy định lấy ra được những thông tin: mã hàng, số lượng, email và số điện thoại của người comment

Để người mua có thể comment trên trang mạng xã hội Facebook nhằm xác nhận đơn hàng, cú pháp cần bao gồm các thông tin thiết yếu như mã đơn hàng, tên người mua và số điện thoại liên hệ Các thông tin này giúp hệ thống tự động lọc ra những bình luận hợp lệ, đảm bảo xác nhận đúng đơn hàng và nâng cao hiệu quả xử lý đơn hàng trên nền tảng Facebook Việc sử dụng cú pháp chuẩn và rõ ràng sẽ tăng khả năng phân loại tự động chính xác, giúp quá trình giao dịch diễn ra thuận lợi và nhanh chóng hơn.

Sau khi thu thập các bình luận từ quá trình tiền xử lý dữ liệu, chúng tôi sẽ phân tích để trích xuất thông tin về sản phẩm và người mua từ các bình luận trên mạng xã hội Facebook.

Hệ thống sẽ tự động lọc các bình luận phù hợp yêu cầu, bỏ qua những bình luận không đáp ứng tiêu chí Một bình luận được xem là hợp lệ khi chứa đầy đủ các thông tin như mã hàng, số điện thoại, email hoặc số lượng, hoặc kết hợp nhiều yếu tố này Hệ thống sẽ duyệt toàn bộ nội dung bình luận để xác định xem có chứa các thông tin cần thiết hay không, đảm bảo chỉ duyệt các bình luận thực sự phù hợp theo quy chuẩn đề ra.

3.4.2 Quy trình lấy những comment đi trích lọc

Sau khi lấy được dữ liệu comment trong bài viết trên mạng xã hội Facebook

Dữ liệu sẽ không thể tránh khỏi những dữ liệu rác như bị ngắt xuống dòng, sai font định dạng,…

Vì vậy, nhóm sẽ đi lọc dữ liệu lấy được trước để thuận lợi cho những bước sau xử lý dữ liệu

Và sau đây là quy trình xử lý những comment lấy được trước khi đi vào giai đoạn trích lọc dữ liệu:

Hình 3 10: Ví dụ xử lý dữ liệu comment

Trích lọc các đặc trưng

Bước 1: comment =GetComments() // Lấy comments clean_comments= CleantComments(comments) // Làm sạch dữ liệu

Duyệt danh sách comment phone=getPhone(cm); email=getEmail(cm); mahang=getMahang(); soluong=getSoluong();

Add vào ds lưu file;

3.5.2 Lấy mã hàng từ Comment Để lấy mã hàng từ trong comment hệ thống sẽ duyệt hết chuỗi từ comment lấy được từ trang bán hàng trên mạng xã hội Facebook để so với định dạng đúng mã hàng của người dùng hệ thống tự đặt ra

Kỹ thuật lấy mã hàng nhóm sử dụng thư viện Regex để định nghĩa các khuôn mẫu (pattern) tìm kiếm chuỗi, giúp dễ dàng xác định và trích xuất dữ liệu trong văn bản Nhờ đó, thường được ứng dụng để tìm kiếm, chỉnh sửa, và thao tác trên dữ liệu văn bản một cách hiệu quả Khuôn mẫu (biểu thức chính quy) được xây dựng dựa trên các quy tắc cụ thể để đảm bảo chính xác trong quá trình xử lý dữ liệu.

42 thể khớp (match) một hoặc một vài lần, hoặc không khớp với một văn bản cho trước using System.Text.RegularExpressions; Đầu tiên sẽ đi định nghĩa khuôn mẫu:

Regex regMaHang = new Regex(@"[MH|mh|Mh|mH]+[0-9]{3}");

Khuôn mẫu này được sử dụng để so sánh với chuỗi lấy từ bình luận nhằm xác định mã hàng có định dạng cụ thể Mã hàng có dạng MHxxx, trong đó "xxx" là ba số tự nhiên, giúp dễ dàng nhận diện và trích xuất thông tin sản phẩm chính xác Áp dụng mẫu này góp phần nâng cao hiệu quả trong quá trình xử lý dữ liệu và tối ưu hóa công tác quản lý hàng hóa.

Hình 3 11: Xử lý lấy mã hàng

3.5.3 Lấy số lượng từ Comment Để lấy số lượng từ trong comment hệ thống sẽ duyệt hết chuỗi từ comment lấy được từ trang bán hàng trên mạng xã hội Facebook để so với định dạng đúng số lượng của người dùng hệ thống tự đặt ra

Xử lý việc lấy được số lượng nhóm cũng sử dụng thư viện Regex: using System.Text.RegularExpressions; Đầu tiên sẽ đi định nghĩa khuôn mẫu:

Khuôn mẫu này để so sánh với chuỗi lấy được từ trong comment để lấy ra số lượng có dạng số gồm 2 chữ số

Hình 3 12: Xử lý lấy số lượng

3.5.4 Lấy Email từ Comment Để lấy email từ trong comment hệ thống sẽ duyệt hết chuỗi từ comment lấy được từ trang bán hàng trên mạng xã hội Facebook để so với định dạng đúng của một email

Xử lý việc lấy được email nhóm cũng sử dụng thư viện Regex: using System.Text.RegularExpressions; Đầu tiên sẽ đi định nghĩa khuôn mẫu:

Khuôn mẫu này để so sánh với chuỗi lấy được từ trong comment để lấy ra email đúng:

Hình 3 13: Xử lý lấy Email

3.5.5 Lấy số điện thoại từ Comment Để lấy số điện thoại từ trong comment hệ thống sẽ duyệt hết chuỗi từ comment lấy được từ trang bán hàng trên mạng xã hội Facebook để so với định dạng đúng của một số điện thoại

Xử lý việc lấy được số điện thoại nhóm cũng sử dụng thư viện Regex: using System.Text.RegularExpressions; Đầu tiên sẽ đi định nghĩa khuôn mẫu:

Khuôn mẫu này để so sánh với chuỗi lấy được từ trong comment để lấy ra số điện thoại đúng:

Hình 3 14: Xử lý lấy số điện thoại

Kết quả dữ liệu sau khi được xử lý

Dữ liệu khách hàng comment sau được hệ thống xử lý người dùng có thể lưu lại dữ liệu vào file csv để có thể quản lý dễ dàng

Hệ thống sau khi xử lý 300 comment và export ra file csv

Hình 3 15: Dữ liệu xuất ra file CSV

XÂY DỰNG VÀ ĐÁNH GIÁ HỆ THỐNG

Giới thiệu

Sau khi phân tích và tìm hiểu các công cụ xử lý dữ liệu, nhóm đã xây dựng một ứng dụng demo để lấy các bình luận từ bài đăng trên trang mạng xã hội Facebook của chính mình Ứng dụng này yêu cầu người dùng cung cấp ba loại dữ liệu chính để hoạt động hiệu quả.

Access Token là một token quan trọng giúp ứng dụng có thể truy cập vào Facebook Graph API để lấy các bình luận từ bài viết của Fanpage mà người dùng cung cấp Việc sử dụng Access Token đảm bảo quyền truy cập hợp lệ và an toàn, giúp tự động thu thập dữ liệu bình luận một cách hiệu quả Đây là thành phần không thể thiếu trong quá trình tích hợp và đồng bộ dữ liệu từ Facebook Fanpage vào hệ thống của bạn.

Việc xây dựng ứng dụng nhóm đã chọn nền tảng Windows Forms (WinForms), một thư viện lớp GUI miễn phí và mã nguồn mở nằm trong Microsoft NET Framework hoặc Mono Framework, giúp phát triển các ứng dụng khách phong phú cho desktop, laptop và máy tính bảng Mặc dù WinForms được xem như một sự thay thế cho Thư viện Microsoft Foundation Class dựa trên C++, nó phức tạp hơn nhưng không cung cấp mô hình đối tượng tương đương, chủ yếu hoạt động như nền tảng cho tầng giao diện người dùng trong kiến trúc đa tầng.

Cài đặt hệ thống

Các bước để cài đặt hệ thống GetComment:

Hình 4 1: Cài đặt hệ thống 1

Hình 4 2: Cài đặt hệ thống 2

Hình 4 3: Cài đặt hệ thống 3

Hình 4 4: Cài đặt hệ thống 4

Hình 4 5: Cài đặt hệ thống 5

Hình 4 6: Cài đặt hệ thống 6

Kết quả

Hình 4 7: Giao diện hệ thống

Đánh giá

Trên tổng số 300 comment, số lượng comment lấy ra được hơn 80% Các comment lấy ra được gồm có :

• Comment theo quy tắc nhóm đặt ra đúng thứ tự

• Comment theo quy tác nhóm đặt ra không theo thứ tự

Nhưng comments còn lại không lấy ra được gồm nhũng comment sai quy tắc nhóm đặt ra như:

• Dạng email không phù hợp hoặc không có email

• Số lượng không phù hợp hoặc không có số lượng

• Số điện thoại không phù hợp hoặc không có số điện thoại

• Mã hàng không phù hợp hoặc không có mã hàng.

Ngày đăng: 17/03/2023, 20:49

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w