python實(shí)現(xiàn)zencart產(chǎn)品數(shù)據(jù)導(dǎo)入到magento(python導(dǎo)入數(shù)據(jù))
python版本要求在3.3.x,需要mysql connector for python第三方庫支持
不適用所有的zencart導(dǎo)入到magento
#encoding=utf-8
#@ author:凋零
#@ contact:342103944@qq.com
import mysql.connector
import sys
import time
import glob
import os
import re
import shutil
config={'host':'127.0.0.1','user':'root','password':'1','port':3306 ,'database':'zencart','charset':'utf8'}
config1={'host':'127.0.0.1','user':'root','password':'1','port':3306 ,'database':'magento','charset':'utf8'}
zencart_image_dir="D:/wamp/www/public/images/"#此處改為自己實(shí)際路徑
magento_image_dir="D:/wamp/www/public1/media/catalog/product/"#此處改為自己實(shí)際路徑
#所有產(chǎn)品信息,列表類型
products=[]
#連接到zencart數(shù)據(jù)庫
try:
cnn=mysql.connector.connect(**config)
except mysql.connector.Error as e:
print('connect fails!{}'.format(e))
#連接到magento數(shù)據(jù)庫
try:
cnn_magento=mysql.connector.connect(**config1)
except mysql.connector.Error as e:
print('connect fails!{}'.format(e))
#連接到magento數(shù)據(jù)庫
try:
cnn_magento1=mysql.connector.connect(**config1)
except mysql.connector.Error as e:
print('connect fails!{}'.format(e))
#--------------獲取產(chǎn)品信息函數(shù)塊開始---------------#
#(獲取產(chǎn)品描述,返回字典)
def get_productdescription(product_id):
global cnn
product_id=str(product_id)
description={}
cursor_des=cnn.cursor()
cursor_des.execute("select products_name,products_url from products_description where products_id="+product_id)
temp_description=cursor_des.fetchone()
description['name']=temp_description[0]
description['url']=temp_description[1]
return description
#(獲取產(chǎn)品多圖,返回列表)
def get_productaddtionimage(product_image):
base_dir="D:\\wamp\www\\public\\images\\"#此處改為自己實(shí)際路徑
addtion_image=[]
image_uri=(base_dir+product_image).replace('.jpg','')
for i in range(16):
if os.path.isfile(image_uri+'_'+str(i)+'.jpg'):
addtion_image.append(product_image.replace('.jpg','')+'_'+str(i)+'.jpg')
else:
#print ("none")
pass
return addtion_image
#(獲取產(chǎn)品對(duì)應(yīng)目錄,返回列表)
def get_product_categories(product_id):
product_id=str(product_id)
categories=[]
cursor=cnn.cursor()
cursor.execute("select categories_id from products_to_categories where products_id="+product_id)
for row in cursor.fetchall():
for r in row:
categories.append(r)
return categories
#--------------獲取產(chǎn)品信息函數(shù)塊結(jié)束---------------#
#分類id對(duì)應(yīng)字典
categories_to={\
'2':'10','3':'13','4':'18','139':'37','176':'38','201':'70','202':'71','203':'69','204':'76','205':'77',\
'206':'66','207':'73','208':'72','209':'78','210':'79','211':'68','212':'74','213':'59','214':'60','215':'58','216':'62','217':'63','218':'64','219':'65','222':'54',\
'223':'53','224':'56','225':'80','230':'81','231':'48','232':'49','233':'50','234':'82','235':'83','236':'84','237':'45','238':'46',\
'239':'85','240':'51','241':'52','242':'86','245':'40','247':'44','248':'87','249':'43','250':'88','251':'89','252':'42',\
'260':'38','261':'38','271':'41',\
'279':'90','280':'39','281':'61','282':'91'\
}
#替換特殊字符函數(shù)
def cleanchar(str):
str=str.replace('?','oe')
str=str.replace('é','e')
str=str.replace('è','e')
str=str.replace('?','e')
str=str.replace('?','i')
str=str.replace('ê','e')
str=str.replace('a','a')
str=str.replace('à','a')
str=str.replace('?','u')
str=str.replace('ü','u')
str=str.replace('?','ae')
str=str.replace('?','o')
str=str.replace('?','o')
str=str.replace('?','c')
str=str.replace('?','i')
str=str.replace('?','i')
str=str.replace('?','i')
str=str.replace("'","")
str=str.lower()
str=str.strip()
return str
#函數(shù),檢查是否有相同的url,有則返回新url
def check_url(product_name,sku):
cursor1=cnn_magento1.cursor()
cursor1.execute("select value from catalog_product_entity_varchar where entity_type_id=10 and attribute_id=96 and value='"+str.strip(product_name)+"'")
#result=cursor1.execute("select value_id from catalog_product_entity_varchar where entity_type_id=10 and attribute_id=96 and value='"+str.strip(test)+"'")
#print ("select value_id from catalog_product_entity_varchar where entity_type_id=10 and attribute_id=96 and value='"+str.strip(product_name)+"'")
row=cursor1.fetchall()
if len(row)!=0:
rstr = r"[\/\\\:\*\?\"\<\>\|]"
url=str.strip(re.sub(rstr, "-", product_name))
url=url.replace('?','oe')
url=url.replace('é','e')
url=url.replace('è','e')
url=url.replace('?','e')
url=url.replace('?','i')
url=url.replace('ê','e')
url=url.replace('a','a')
url=url.replace('à','a')
url=url.replace('?','u')
url=url.replace('ü','u')
url=url.replace('?','ae')
url=url.replace('?','o')
url=url.replace('?','o')
url=url.replace('?','c')
url=url.replace('?','i')
url=url.replace('?','i')
url=url.replace('?','i')
url=url.replace("'","")
url=url.lower()
url=url.replace(' ','-')+'_'+sku.lower()
return url
else:
rstr = r"[\/\\\:\*\?\"\<\>\|]"
url=str.strip(re.sub(rstr, "-", product_name))
url=url.replace('?','oe')
url=url.replace('é','e')
url=url.replace('è','e')
url=url.replace('?','e')
url=url.replace('?','i')
url=url.replace('ê','e')
url=url.replace('a','a')
url=url.replace('à','a')
url=url.replace('?','u')
url=url.replace('ü','u')
url=url.replace('?','ae')
url=url.replace('?','o')
url=url.replace('?','o')
url=url.replace('?','c')
url=url.replace('?','i')
url=url.replace('?','i')
url=url.replace('?','i')
url=url.replace("'","")
url=url.lower()
url=url.replace(' ','-')
return url
#函數(shù),拷貝zencart產(chǎn)品圖片到magento目錄并根據(jù)產(chǎn)品名重命名
def copy_image_to_magento(image,sku,product_name,if_addition_image=False):
if if_addition_image:
#去除路徑,獲取圖片名稱
image_name=os.path.basename(zencart_image_dir+image)
#獲取圖片類型(后綴)
extension = os.path.splitext(image_name)[1]
#分拆圖片名稱
image_all=image_name.split('_')
#新的圖片名稱重命名后與產(chǎn)品名稱一樣(正則替換掉非法字符如/,\,|,*等)
rstr = r"[\/\\\:\*\?\"\<\>\|]"
new_image_name_noextension=str.strip(re.sub(rstr, "-", product_name))
new_image_name_noextension=cleanchar(new_image_name_noextension)
new_image_name=new_image_name_noextension+"_"+image_all[1]
#判斷圖片是否存在
if os.path.isfile(magento_image_dir+new_image_name):
print ("\t\t\t\t存在圖片"+new_image_name)
shutil.copy(zencart_image_dir+image,magento_image_dir+new_image_name_noextension+"_"+sku+"_"+image_all[1])
return '/'+new_image_name_noextension+"_"+sku+"_"+image_all[1]
else:
print ("\t\t\t不存在圖片"+new_image_name+",執(zhí)行拷貝圖片并重命名")
#不存在圖片則拷貝圖片到magento目錄并重命名
shutil.copy(zencart_image_dir+image, magento_image_dir+new_image_name)
return '/'+new_image_name
else:
#去除路徑,獲取圖片名稱
image_name=os.path.basename(zencart_image_dir+image)
#獲取圖片類型(后綴)
extension = os.path.splitext(image_name)[1]
#新的圖片名稱重命名后與產(chǎn)品名稱一樣(正則替換掉非法字符如/,\,|,*等)
rstr = r"[\/\\\:\*\?\"\<\>\|]"
new_image_name_noextension=str.strip(re.sub(rstr, "-", product_name))
new_image_name_noextension=cleanchar(new_image_name_noextension)
new_image_name=cleanchar(str.strip(re.sub(rstr, "-", product_name)))+extension
#先判斷圖片是否存在
if os.path.isfile(magento_image_dir+new_image_name):
print ("\t\t\t\t存在圖片"+magento_image_dir+new_image_name+"\n")
#存在圖片,則加sku
shutil.copy(zencart_image_dir+image, magento_image_dir+new_image_name_noextension+"_"+sku+extension)
return '/'+new_image_name_noextension+"_"+sku+extension
else:
print ("\t\t\t\t不存在圖片"+magento_image_dir+new_image_name+",執(zhí)行拷貝圖片并重命名\n")
#不存在圖片則拷貝圖片到magento目錄并重命名
shutil.copy(zencart_image_dir+image, magento_image_dir+new_image_name)
return '/'+new_image_name
product_sql='select * from products'
cursor=cnn.cursor()
cursor1=cnn.cursor()
cursor.execute(product_sql)
cursor.fetchall()
#返回產(chǎn)品總個(gè)數(shù)
numrows = cursor.rowcount
i=0
cursor1.execute(product_sql)
print ("作者:凋零(qq:342103944)")
print ("開始獲取zencart數(shù)據(jù)庫產(chǎn)品信息..........")
time.sleep(3)
for row in cursor1.fetchall():
#臨時(shí)產(chǎn)品列表
temp_product=[]
#存放產(chǎn)品信息,字典類型
product_info={}
for r in row:
#循環(huán)存放產(chǎn)品信息到產(chǎn)品列表
temp_product.append(r)
product_info['product_id']=temp_product[0]
product_info['sku']=temp_product[3]
product_info['product_image']=temp_product[4]
product_info['price']=temp_product[5]
product_info['silhouette']=temp_product[6].replace('\n','')
product_info['neckline']=temp_product[7].replace('\n','')
product_info['waist']=temp_product[8].replace('\n','')
product_info['hemline']=temp_product[9].replace('\n','')
product_info['sleeve_length']=temp_product[10].replace('\n','')
product_info['sleeve_type']=temp_product[11].replace('\n','')
product_info['fabric']=temp_product[12].replace('\n','')
product_info['embellishment']=temp_product[13].replace('\n','')
product_info['belt_fabric']=temp_product[14].replace('\n','')
product_info['back_detail']=temp_product[15].replace('\n','')
product_info['fully_lined']=temp_product[16].replace('\n','')
product_info['built_in_bra']=temp_product[17].replace('\n','')
product_info['body_shape']=temp_product[18].replace('\n','')
product_info['season']=temp_product[19].replace('\n','')
product_info['color']=temp_product[20].replace('\n','')
product_info['special_price']=temp_product[42]
product_info['master_categories_id']=temp_product[43]
product_info['product_name']=get_productdescription(product_info['product_id'])['name']
product_info['addtion_image']=get_productaddtionimage(product_info['product_image'])
product_info['product_categories']=get_product_categories(product_info['product_id'])
products.append(product_info)
i=i+1
cursor1.close
print ("獲取數(shù)據(jù)完畢總共數(shù)據(jù)為:"+str(i)+"條")
time.sleep(1)
print ("開始轉(zhuǎn)存數(shù)據(jù)到magento庫.......")
time.sleep(1)
#----------------------------------------#
#------ ----#
#------ 開始存儲(chǔ)數(shù)據(jù)到magento庫 ----#
#------ ----#
#----------------------------------------#
cursor=cnn_magento.cursor()
cursor.execute("set foreign_key_checks = 0")
not_import_categores_id=[]
p=0
for j in range(len(products)):
product_id=products[j]['product_id']
product_sku=products[j]['sku']
product_baseimage=products[j]['product_image']
product_price=products[j]['price']
product_silhouette=products[j]['silhouette']
product_neckline=products[j]['neckline']
product_waist=products[j]['waist']
product_hemline=products[j]['hemline']
product_sleeve_length=products[j]['sleeve_length']
product_sleeve_type=products[j]['sleeve_type']
product_fabric=products[j]['fabric']
product_embellishment=products[j]['embellishment']
product_belt_fabric=products[j]['belt_fabric']
product_back_detail=products[j]['back_detail']
product_fully_lined=products[j]['fully_lined']
product_built_in_bra=products[j]['built_in_bra']
product_body_shape=products[j]['body_shape']
product_season=products[j]['season']
product_color=products[j]['color']
product_special_price=products[j]['special_price']
product_master_categories_id=products[j]['master_categories_id']
product_name=products[j]['product_name']
product_addtion_image=products[j]['addtion_image']
product_to_categories=products[j]['product_categories']
#判斷兩個(gè)數(shù)據(jù)庫之間分類是否對(duì)應(yīng),然后插入數(shù)據(jù)到magneto庫,沒有則不執(zhí)行
if str(product_master_categories_id) in categories_to.keys():
p=p+1
print ("---第【"+str(p)+"】條:"+product_sku)
#開始轉(zhuǎn)存數(shù)據(jù)到catalog_product_entity表
cursor.execute("insert into catalog_product_entity set entity_type_id=10,attribute_set_id=9,type_id='simple',sku='"+product_sku+"',created_at='2013-05-27 03:18:42',updated_at='2013-05-29 07:59:35',has_options=1,required_options=1")
#獲取實(shí)體(產(chǎn)品)id
catalog_entity_id=cursor.lastrowid
#插入數(shù)據(jù)到產(chǎn)品分類對(duì)應(yīng)表
for categories_id in product_to_categories:
if str(categories_id) in categories_to.keys():
cursor.execute("insert into catalog_category_product set category_id="+categories_to[str(categories_id)]+",product_id="+str(catalog_entity_id)+",position=1")
for i in range(1,4):
cursor.execute("insert into catalog_category_product_index set category_id="+str(categories_id)+",product_id="+str(catalog_entity_id)+",position=1,is_parent=1,store_id="+str(i)+",visibility=4")
#插入產(chǎn)品相關(guān)值到實(shí)體時(shí)間值表
cursor.execute("insert into catalog_product_entity_datetime set entity_type_id=10,attribute_id=704,store_id=0,entity_id="+str(catalog_entity_id)+",value='2013-05-19 00:00:00'")
cursor.execute("insert into catalog_product_entity_datetime set entity_type_id=10,attribute_id=705,store_id=0,entity_id="+str(catalog_entity_id)+",value='2013-05-25 00:00:00'")
cursor.execute("insert into catalog_product_entity_datetime set entity_type_id=10,attribute_id=572,store_id=0,entity_id="+str(catalog_entity_id))
cursor.execute("insert into catalog_product_entity_datetime set entity_type_id=10,attribute_id=573,store_id=0,entity_id="+str(catalog_entity_id))
#插入促銷價(jià)格,如果沒促銷價(jià)格則不執(zhí)行
if product_special_price!='':
cursor.execute("insert into catalog_product_entity_decimal set entity_type_id=10,attribute_id=567,store_id=0,entity_id="+str(catalog_entity_id)+",value="+str(product_special_price))
#插入產(chǎn)品重量,產(chǎn)品價(jià)格
cursor.execute("insert into catalog_product_entity_decimal set entity_type_id=10,attribute_id=101,store_id=0,entity_id="+str(catalog_entity_id)+",value=2")
cursor.execute("insert into catalog_product_entity_decimal set entity_type_id=10,attribute_id=99,store_id=0,entity_id="+str(catalog_entity_id)+",value="+str(product_price))
cursor.execute("insert into catalog_product_entity_decimal set entity_type_id=10,attribute_id=943,store_id=0,entity_id="+str(catalog_entity_id))
#插入產(chǎn)品相關(guān)值到實(shí)體整型表(產(chǎn)品狀態(tài),關(guān)稅,前臺(tái)可見,制造商,enable_googlecheckout)
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=273,store_id=0,entity_id="+str(catalog_entity_id)+",value=1")
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=274,store_id=0,entity_id="+str(catalog_entity_id)+",value=1")
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=526,store_id=0,entity_id="+str(catalog_entity_id)+",value=4")
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=102,store_id=0,entity_id="+str(catalog_entity_id))
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=903,store_id=0,entity_id="+str(catalog_entity_id)+",value=1")
cursor.execute("insert into catalog_product_entity_int set entity_type_id=10,attribute_id=935,store_id=0,entity_id="+str(catalog_entity_id)+",value=0")
#####拷貝產(chǎn)品圖片到magento目錄并插入到數(shù)據(jù)庫#######
#拷貝并插入主圖
base_image_in_magento=copy_image_to_magento(product_baseimage,product_sku,product_name,False)
cursor.execute("insert into catalog_product_entity_media_gallery set attribute_id=703,entity_id="+str(catalog_entity_id)+",value='"+base_image_in_magento+"'")
gallery_id=cursor.lastrowid
cursor.execute("insert into catalog_product_entity_media_gallery_value set value_id="+str(gallery_id)+",store_id=0,position=1,disabled=0")
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=493,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+base_image_in_magento+"'")
#small_image
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=109,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+base_image_in_magento+"'")
#image
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=106,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+base_image_in_magento+"'")
#拷貝并插入附加圖
if len(product_addtion_image)!=0:
iii=2
for each_image in product_addtion_image:
addition_image_in_magento=copy_image_to_magento(each_image,product_sku,product_name,True)
cursor.execute("insert into catalog_product_entity_media_gallery set attribute_id=703,entity_id="+str(catalog_entity_id)+",value='"+addition_image_in_magento+"'")
addition_id=cursor.lastrowid
cursor.execute("insert into catalog_product_entity_media_gallery_value set value_id="+str(addition_id)+",store_id=0,position="+str(iii)+",disabled=0")
iii=iii+1
#插入產(chǎn)品相關(guān)值到實(shí)體文本表(產(chǎn)品描述,段描述等)
cursor.execute("insert into catalog_product_entity_text set entity_type_id=10,attribute_id=506,store_id=0,entity_id="+str(catalog_entity_id)+",value='short_description& & '")
cursor.execute("insert into catalog_product_entity_text set entity_type_id=10,attribute_id=531,store_id=0,entity_id="+str(catalog_entity_id))
cursor.execute("insert into catalog_product_entity_text set entity_type_id=10,attribute_id=104,store_id=0,entity_id="+str(catalog_entity_id))
cursor.execute("insert into catalog_product_entity_text set entity_type_id=10,attribute_id=97,store_id=0,entity_id="+str(catalog_entity_id)+",value='description& & '")
#插入產(chǎn)品到catalog_product_entity_varchar(產(chǎn)品名稱,url等)
#插入name
product_name=product_name.replace("'","")
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=96,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+str.strip(product_name)+"'")
#插入url_key
url=check_url(product_name,product_sku)
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=481,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+str.strip(url)+"'")
#manufacture
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=940,store_id=0,entity_id="+str(catalog_entity_id))
#msrp_enabled
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=941,store_id=0,entity_id="+str(catalog_entity_id)+",value=2")
#msrp_display_actual_price_type
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=942,store_id=0,entity_id="+str(catalog_entity_id)+",value=4")
#meta_title
#cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=103,store_id=0,entity_id="+str(catalog_entity_id)+",value=4")
#meta_description
#cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=105,store_id=0,entity_id="+str(catalog_entity_id)+",value=4")
#thumbnail
#print ("insert into `catalog_product_entity_varchar` set `entity_type_id`=10,`attribute_id`=493,`store_id`=0,`entity_id`="+str(catalog_entity_id)+",`value`='no_selection'")
#input()
#cursor.execute("insert into `catalog_product_entity_varchar` set `entity_type_id`=10,`attribute_id`=493,`store_id`=0,`entity_id`="+str(catalog_entity_id)+",`value`='no_selection'")
#custom_design
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=571,store_id=0,entity_id="+str(catalog_entity_id))
#options_container
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=836,store_id=0,entity_id="+str(catalog_entity_id)+",value='container2'")
#page_layout
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=931,store_id=0,entity_id="+str(catalog_entity_id))
#gift_message_available
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=562,store_id=0,entity_id="+str(catalog_entity_id)+",value=1")
#thumbnail_label
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=881,store_id=0,entity_id="+str(catalog_entity_id))
#small_image_label
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=880,store_id=0,entity_id="+str(catalog_entity_id))
#image_label
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=879,store_id=0,entity_id="+str(catalog_entity_id))
#url_path
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=570,store_id=0,entity_id="+str(catalog_entity_id)+",value='"+str.strip(url)+"'")
cursor.execute("insert into catalog_product_entity_varchar set entity_type_id=10,attribute_id=570,store_id=1,entity_id="+str(catalog_entity_id)+",value='"+str.strip(url)+"'")
#插入catalog_product_flat(1,2,3)表
for aa in range(1,4):
cursor.execute("insert into catalog_product_flat_"+str(aa)+" set entity_id="+str(catalog_entity_id)+",attribute_set_id=9,type_id='simple',created_at='2013-05-31 06:43:21'\
,description='test test ,& ',enable_googlecheckout=1,has_options=1,image='"+base_image_in_magento+"',is_recurring=0,msrp_display_actual_price_type=4\
,msrp_enabled=2,name='"+product_name+"',price="+str(product_price)+",required_options=1,short_description='short description & ',sku='"+product_sku+"'\
,small_image='"+base_image_in_magento+"',special_from_date='2013-05-19 00:00:00',special_price="+str(product_special_price)+",special_to_date='2014-06-27 00:00:00'\
,tax_class_id=1,thumbnail='no_selection',updated_at='2013-05-31 10:38:25',url_key='"+url+"',url_path='"+url+"',visibility=4,weight=2")
for aa in range(1,4):
cursor.execute("insert into catalog_product_index_eav set entity_id="+str(catalog_entity_id)+",attribute_id=903,store_id="+str(aa)+",value=1")
cursor.execute("insert into catalog_product_index_eav set entity_id="+str(catalog_entity_id)+",attribute_id=971,store_id="+str(aa)+",value=128")
#catalog_product_index_eav_idx
for aa in range(1,4):
cursor.execute("insert into catalog_product_index_eav_idx set entity_id="+str(catalog_entity_id)+",attribute_id=903,store_id="+str(aa)+",value=1")
#catalog_product_index_price
for aa in range(5):
cursor.execute("insert into catalog_product_index_price set entity_id="+str(catalog_entity_id)+",customer_group_id="+str(aa)+",website_id=1,tax_class_id=1,price="+str(product_price)+"\
,final_price="+str(product_special_price)+",min_price="+str(product_special_price)+",max_price="+str(product_special_price))
#catalog_product_index_price_idx
for aa in range(5):
cursor.execute("insert into catalog_product_index_price_idx set entity_id="+str(catalog_entity_id)+",customer_group_id="+str(aa)+",website_id=1,tax_class_id=1,price="+str(product_price)+"\
,final_price="+str(product_special_price)+",min_price="+str(product_special_price)+",max_price="+str(product_special_price))
#catalog_product_website
cursor.execute("insert into catalog_product_website set product_id="+str(catalog_entity_id)+",website_id=1")
#cataloginventory_stock_item
cursor.execute("insert into cataloginventory_stock_item set product_id="+str(catalog_entity_id)+",stock_id=1,qty=1000,min_qty=0,use_config_min_qty=1,is_qty_decimal=0,\
backorders=0,use_config_backorders=1,min_sale_qty=1,use_config_min_sale_qty=1,max_sale_qty=0,use_config_max_sale_qty=1,is_in_stock=1,use_config_notify_stock_qty=1,\
manage_stock=0,use_config_manage_stock=1,stock_status_changed_auto=0,use_config_qty_increments=1,qty_increments=0,use_config_enable_qty_inc=1,enable_qty_increments=0,\
is_decimal_divided=0")
#cataloginventory_stock_status
cursor.execute("insert into cataloginventory_stock_status set product_id="+str(catalog_entity_id)+",website_id=1,stock_id=1,qty=1000,stock_status=1")
#cataloginventory_stock_status_idx
cursor.execute("insert into cataloginventory_stock_status_idx set product_id="+str(catalog_entity_id)+",website_id=1,stock_id=1,qty=1000,stock_status=1")
cnn_magento.commit()
else:
print ("\t\t\tid["+str(product_master_categories_id)+"]在magneto庫中沒有與之對(duì)應(yīng)的id,跳過此分類")
not_import_categores_id.append(str(product_master_categories_id))
cursor.execute("set foreign_key_checks = 1")
cursor.close
print ("導(dǎo)入完成")
print ("一共有"+str(len(not_import_categores_id))+"沒導(dǎo)入")
- 使用python將excel數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫過程詳解
- 用Python將Excel數(shù)據(jù)導(dǎo)入到SQL Server的例子
- Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具
- Python使用xlrd模塊操作Excel數(shù)據(jù)導(dǎo)入的方法
- 淺談Python數(shù)學(xué)建模之線性規(guī)劃
- 了解一下python內(nèi)建模塊collections
- Python進(jìn)行統(tǒng)計(jì)建模
- python實(shí)現(xiàn)數(shù)據(jù)分析與建模
- Python創(chuàng)建模塊及模塊導(dǎo)入的方法
- 淺談Python數(shù)學(xué)建模之?dāng)?shù)據(jù)導(dǎo)入
相關(guān)文章
Python實(shí)戰(zhàn)項(xiàng)目用PyQt5制作漫畫臉GUI界面
PyQt5 是用來創(chuàng)建Python GUI應(yīng)用程序的工具包。作為一個(gè)跨平臺(tái)的工具包,PyQt可以在所有主流操作系統(tǒng)上運(yùn)行,本文主要介紹了如何用PyQt5制作漫畫臉的GUI界面2021-10-10Pytest參數(shù)化parametrize使用代碼實(shí)例
這篇文章主要介紹了Pytest參數(shù)化parametrize使用代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02在Python的Flask框架中實(shí)現(xiàn)全文搜索功能
這篇文章主要介紹了在Python的Flask框架中實(shí)現(xiàn)全文搜索功能,這個(gè)基本的web功能實(shí)現(xiàn)起來非常簡單,需要的朋友可以參考下2015-04-04numpy.random.shuffle打亂順序函數(shù)的實(shí)現(xiàn)
這篇文章主要介紹了numpy.random.shuffle打亂順序函數(shù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09基于Python實(shí)現(xiàn)報(bào)表自動(dòng)化并發(fā)送到郵箱
作為數(shù)據(jù)分析師,我們需要經(jīng)常制作統(tǒng)計(jì)分析圖表。但是報(bào)表太多的時(shí)候往往需要花費(fèi)我們大部分時(shí)間去制作報(bào)表。本文將利用Python實(shí)現(xiàn)報(bào)表自動(dòng)化并發(fā)送到郵箱,需要的可以參考一下2022-07-07Python實(shí)現(xiàn)PDF轉(zhuǎn)Word的方法詳解
由于PDF的文件大多都是只讀文件,有時(shí)候?yàn)榱藵M足可以編輯的需要通常可以將PDF文件直接轉(zhuǎn)換成Word文件進(jìn)行操作。本文為大家整理了一些實(shí)現(xiàn)方法,希望對(duì)大家有所幫助2023-02-02