def get_products_by_product_catalog_id(self,
                                        product_catalog_id,
                                        params=None):
     """
         Retrieves products that belong to the specified product feed.
     """
     catalog = ProductCatalog(product_catalog_id)
     fields = [
         'availability', 'brand', 'category', 'condition', 'description',
         'id', 'image_url', 'name', 'price', 'retailer_id', 'url'
     ]
     result = catalog.get_products(fields, params)
     return result
示例#2
0
 def check_product_images(
     self,
     catalog_id,
     limit
 ):
     """
         Check the first "limit" products of a product catalog
     """
     catalog = ProductCatalog(catalog_id)
     fields = [
         'additional_image_urls',
         'image_url',
         'url'
     ]
     products = catalog.get_products(fields)
     image_ok_count = 0
     additional_image_ok_count = 0
     total_count = 0
     small_images = []
     for product in products:
         total_count += 1
         if total_count > limit:
             total_count -= 1
             break
         if self.is_size_ok(product['image_url']):
             image_ok_count += 1
         else:
             if len(small_images) < 5:
                 small_images.append((
                     product['url'],
                     self.extract_from_safe_img(product['image_url'])
                 ))
             if 'additional_image_urls' in product.keys() and \
                     product['additional_image_urls']:
                 image_urls = product['additional_image_urls']
                 for url in image_urls:
                     if self.is_size_ok(url):
                         additional_image_ok_count += 1
                         break
     res = (total_count, image_ok_count, additional_image_ok_count,
            small_images)
     return res
from facebookads.api import FacebookAdsApi
from facebookads.objects import ProductCatalog, Product

FacebookAdsApi.init(
    config['app_id'],
    config['app_secret'],
    config['access_token'],
)

if __name__ == '__main__':
    catalog_id = '<INSERT_YOUR_CATALOG_ID_HERE>'
    catalog = ProductCatalog(catalog_id)
    fields = [
        Product.Field.id,
        Product.Field.name,
        Product.Field.price,
        Product.Field.url,
        Product.Field.availability
    ]
    """
        get products cost more than $99.99.
    """
    params = {
        'filter': {
            'price_amount': {'gt': '9999'}
        }
    }
    results = catalog.get_products(fields, params)
    print(results)
示例#4
0
import sys
sys.path.insert(1, os.path.join(this_dir, os.pardir, os.pardir))

config_file = open(config_filename)
config = json.load(config_file)
config_file.close()

from facebookads.api import FacebookAdsApi
from facebookads.objects import ProductCatalog, Product

FacebookAdsApi.init(
    config['app_id'],
    config['app_secret'],
    config['access_token'],
)

if __name__ == '__main__':
    catalog_id = '<INSERT_YOUR_CATALOG_ID_HERE>'
    catalog = ProductCatalog(catalog_id)
    fields = [
        Product.Field.id, Product.Field.name, Product.Field.price,
        Product.Field.url, Product.Field.availability
    ]
    """
        get products cost more than $99.99.
    """
    params = {'filter': {'price_amount': {'gt': '9999'}}}
    results = catalog.get_products(fields, params)
    print(results)