Shopify有一个API,允许应用程序开发人员从商店访问产品,订单等.我能够获得我店铺所有产品的清单,并获取标题和价格等信息,但我无法抓住图片网址.以下是一些基本代码,说明正在发生的事情以及我需要的内容:
import shopify#other code that accesses my shopproducts = shopify.Product.find() #Here I grab a List of all the productsfor product in products: Title = product.Title price = float(product.variants[0].price) #I'm not sure on the price either,but it works for Now image_urls = create_image_url_List(product.images) # And here's where I want to create the List of strings using product.imagescreate_image_url_List(product_images): image_urls = [] for image in product_images: product_image_url = '' # Somehow get source url from product image here as string image_urls.append(product_image_url) return image_urls
我相信每个产品都有一个图像列表.我希望能够做的是为每个产品创建一个图像源URL列表作为字符串.看一下Shopify API Documentation for Product,我看到product.images属性如下所示:
{ "images" : "[ { "src": "http://example.com/burton.jpg" } ]"}
当我在product.images上执行pdb.set_trace()时,它看起来像这样(我更改了隐私号码):
[image(12345678),image(12345678),image(12345678)]
当我在其中一个图像上执行dir()时,我得到了这个:
['_ShopifyResource__get_ID','_ShopifyResource__set_ID','_ShopifyResource__to_xml_element','__class__','__cmp__','__delattr__','__dict__','__doc__','__format__','__getattr__','__getattribute__','__hash__','__init__','__Metaclass__','__module__','__new__','__reduce__','__reduce_ex__','__repr__','__setattr__','__sizeof__','__str__','__subclasshook__','__weakref__','_build_List','_build_object','_class_delete','_class_get','_class_head','_class_post','_class_put','_collection_path','_connection','_custom_method_collection_url','_custom_method_element_url','_custom_method_new_element_url','_element_path','_find_class_for','_find_class_for_collection','_find_every','_find_one','_find_single','_format','_headers','_ID_from_response','_initialized','_instance_delete','_instance_get','_instance_head','_instance_post','_instance_put','_load_attributes_from_response','_password','_plural','_prefix','_prefix_options','_prefix_parameters','_prefix_source','_primary_key','_@R_404_5962@_string','_singular','_site','_split_options','_threadlocal','_timeout','_update','_user','activate_session','attach_image','attributes','clear_session','count','create','delete','destroy','errors','exists','find','find_first','find_one','get','get_ID','head','ID','is_new','is_valID','klass','post','put','reload','save','set_ID','to_dict','to_xml']
编辑:
有了Pawelmhm的帮助,访问源URL的结果代码是:
products = shopify.Product.find() #Here I grab a List of all the productsfor product in products: Title = product.Title price = float(product.variants[0].price) image_urls = [getattr(i,'src') for i in product.images] # Reduced it to List comprehension using solution解决方法 我想我知道你在找什么,product_images是一个“类字典”对象,其中“images”作为键,字典列表作为值.你尝试过这样的事吗?
for image in product_images: #product_image_url = '' image_urls.append(image["images"])
也许?
for image in product_images.to_dict(): image_urls.append(image["images"]["src"])
告诉我它是否有效,如果它没有告诉我你得到了什么错误.我对此很好奇.当你按照自己的方式行事时,你会得到什么(你在这里发布的代码方式)?我的意思是没有这个空字符串当然会废除一切,但没有空字符串,你得到什么列表?
编辑:啊,这应该工作!
for image in product_images: image_urls.append(image["src"])总结
以上是内存溢出为你收集整理的从Python中获取现有Shopify产品图像的源URL全部内容,希望文章能够帮你解决从Python中获取现有Shopify产品图像的源URL所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)