This repository was archived by the owner on Apr 24, 2025. It is now read-only.
forked from facebook/facebook-python-business-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathupload_video.py
More file actions
67 lines (50 loc) · 2.05 KB
/
upload_video.py
File metadata and controls
67 lines (50 loc) · 2.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Copyright 2014 Facebook, Inc.
# You are hereby granted a non-exclusive, worldwide, royalty-free license to
# use, copy, modify, and distribute this software in source code or binary
# form for use in connection with the web services and APIs provided by
# Facebook.
# As with any software that integrates with the Facebook platform, your use
# of this software is subject to the Facebook Developer Principles and
# Policies [http://developers.facebook.com/policy/]. This copyright notice
# shall be included in all copies or substantial portions of the software.
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
"""
Upload a video to adaccount
"""
import sys
import os
sdk_path = os.path.abspath(os.path.join(__file__, os.pardir, os.pardir))
sys.path.insert(1, sdk_path)
from facebook_business import FacebookSession
from facebook_business import FacebookAdsApi
from facebook_business.adobjects.advideo import AdVideo
config_filename = os.path.join(sdk_path, './config.json')
with open(config_filename) as config_file:
config = json.load(config_file)
### Setup session and api objects
session = FacebookSession(
config['app_id'],
config['app_secret'],
config['access_token'],
)
FacebookAdsApi.set_default_api(FacebookAdsApi(session))
if __name__ == '__main__':
# create video object
video = AdVideo(parent_id=config['act_id'])
video_path = os.path.join(
os.path.dirname(__file__),
os.pardir,
'facebook_business/test/misc/video.mp4'
)
# set video fields
video[AdVideo.Field.filepath] = video_path
# remote create
video.remote_create()
video.waitUntilEncodingReady()
print(video)