Phần 1 của series này mình đã hướng dẫn mọi người cách lấy dữ liệu từ Facebook Ads vào file Google sheet thông qua lệnh Run All trên Google Colab, việc lấy dữ liệu chưa hoàn toàn thực thi tự động mà bạn phải bấm nó mới chạy nên trong phần 2 này chúng ta sẽ tập trung vào việc tự động hóa đoạn code trên, lập lịch chạy vào lúc 9h sáng hằng ngày thông qua Google Cloud Function và Google Cloud Scheduler hoàn toàn miễn phí nhé.
1. Cấu hình Cloud Function
Trong Demo này Cloud Function sẽ được dùng để thay thế Google Colab, chúng ta sẽ lưu trữ code thực thi ở đây, các bạn cần lưu ý là kiểm tra lỗi trên Cloud Function rất mất thời gian (từ 25-20 phút) nên để hạn chế lỗi xảy ra các bạn nên chắc chắn là đoạn code hoạt động chính xác trên Google Colab.
Bước 1: Truy cập đường link https://console.cloud.google.com/, gõ vào chữ Cloud Function ở ô tìm kiếm, sau đó click vào dịch vụ
Bước 2: Chọn nút Create Function và điền Tên Function (VD: get-facebook-ads), các thông số còn lại giữ nguyên, nếu số lượng ads công ty bạn lớn có thể cân nhắc tăng Memory Allocated, mặc định là 256MB, mình cũng đang dùng ở mức này.
Bước 3: Chọn nút Next đến phần cấu hình Code, bạn chọn môi trường thực thi Python 3.8.
Bước 4: Copy File nội dung file requirements của mình tại đây thêm vào file requirements hiện tại, không xóa những dòng hiện có nhé
Bước 5: Bên trên file main.py
có nút + (dấu cộng), các bạn click vào đó để tạo mới file, đặt tên file là key.json
, copy nội dung file key.json ở máy của bạn dán vào đây.
Bước 6: Xóa gần hết nội dung trong file main.py
như hình bên dưới
Bước 7: Copy đoạn code sẵn của mình tại đây, và dán vào bên dưới dấu """
trong file main.py
, các bạn lưu ý thay giúp mình google_sheet_id
bằng id của file google sheet bạn đã tạo trong phần 1,giống với id trong Google Colab, bạn cũng làm tương tự như thế vơi [your_account_id]
, sau khi đã dán vào bạn bôi đen các dòng nào chưa được căn lề đúng và bấm phím Tab trên bàn phím để canh lề lại cho nó, sao cho tất cả các dòng phải cách lề 2 tab là được.
Bước 8: (chỉ áp dụng với các bạn developer) Nếu bạn muốn chắc chắn là function của mình đã chạy được thì các bạn có thể click Test Function, Google sẽ hỗ trợ bạn kiểm tra kết quả, tuy nhiên quá trình này diễn ra khá lâu tầm 15-20m
Bước 9: Sau khi đã cấu hình xong phần Code, chúng ta click vào nút Deploy nằm ở phía dưới màn hình để hoàn tất phần cấu hình, sẽ mất khoảng 1-2 phút thì Google sẽ deploy xong. Vậy là bây giờ bạn đã có thể ra lệnh cho hàm này thực thi thông qua Google Cloud Scheduler rồi.
Bước 10: Click vào Function vừa mới tạo, copy lấy URL gọi function này rồi lưu trữ ra đâu đó trong máy để dùng cho bước tiếp theo.
2. Cấu hình Google Scheduler
Google Cloud Scheduler trong Demo này sẽ thay thế việc bấm lệnh Run All trong Google Colab ở phần 1, thay vì có người bấm hằng ngày thì chúng ta sẽ nhờ nó làm giúp
Bước 1: Search dịch vụ Cloud Scheduler ở phần tìm kiếm và click vào dịch vụ
Bước 2: Chọn Create Job, sau đó điền tên của Job (VD: get-facebook-ads-daily) và thời gian thực thi cho nó là 0 9 * * *
, nếu các bạn điền giống mình thì thời gian chạy hằng ngày là 9h sáng, timezone thì bạn search VietNam, hệ thống sẽ tự gợi ý cho mình luôn.
Bước 3: Cấu hình phần Configure the execution ở bên dưới Define the schedule, các bạn điền giống mình như hình bên dưới, trong đó mục URL và Audience các bạn dán vào URL đã lấy được ở bước 10 cấu hình Cloud Function.
Bước 4: Click chọn Create để tạo Job, quay trở lại màn hình chính của Cloud Scheduler, mọi người tick chọn vào Job vừa mới tạo vào chọn Force Run (yêu cầu job chạy ngay bây giờ mà không đợi 9h hằng ngày)
Kết quả thành công hay thất bại sẽ hiển thị ở cột Status of last execution
, nếu trong quá trình chạy có lỗi xảy ra các bạn có thể inbox cho mình qua facebook hoặc telegram, chúc các bạn thực hành thành công.
3. Kết luận
Mình mong là bài hướng dẫn này có thể giúp mọi người tiết kiệm chi phí và chủ động hơn trong việc lấy dữ liệu từ Facebook Ads, thực tế thì đoạn code mà mình làm sẵn cho các bạn cũng được tạo ra từ ChatGPT đến 99%, mình chỉ sửa một chút để khớp với Demo hiện tại. Động lực giúp mình làm hướng dẫn này là vì thấy bạn Markerter team mình trước đó phải vào Facebook Ads download số liệu đưa lên báo cáo hằng ngày, rất thủ công nên mình đã hỗ trợ làm giúp bạn ấy, đây là giải pháp không tốn phí nên cấu hình hơi tốn công một tí, nhưng mình tin là nếu các bạn làm đúng theo các bước đã mô tả thì chắc chắn sẽ thành công. Hẹn gặp lại mọi người trong những bài viết tiếp theo.
Các bài viết liên quan:
- Hướng dẫn cách lấy dữ liệu Facebook Ads Tự động Mỗi ngày Miễn phí- Phần 1
- Google Colab là gì? Hướng dẫn sử dụng Google Colab cho người mới
- Data Envelopment Analysis (DEA) là gì? Giải thích dễ hiểu
- Large Language Model là gì ? Giải thích dễ hiểu
- Data Analyst là gì? Trở thành Data Analyst cần chuẩn bị gì?
Bài viết liên quan
Database (Cơ sở dữ liệu) là gì? Những loại Database phổ biến nhất hiện nay
Sep 01, 2024 • 11 min read
Python là gì? Những đặc điểm nổi bật và Ứng dụng của Python
Aug 28, 2024 • 14 min read
Ứng dụng Hypothesis Testing - Kiểm định giả thuyết trong Y học
Jul 18, 2024 • 8 min read
Google Colab là gì? Hướng dẫn sử dụng Google Colab cho người mới
Jul 02, 2024 • 10 min read
Hướng dẫn cách lấy dữ liệu Facebook Ads Tự động Mỗi ngày Miễn phí- Phần 1
Jun 24, 2024 • 11 min read
Khám phá Time Series Analysis - Phần 2
May 21, 2024 • 10 min read