実現したいこと
pythonで作成したCSVの商品リストをメルカリショップスにアップロードしたい
発生している問題・分からないこと
どの方法で作成しても、アップロードすると、「販売価格は数字で入力してください」というエラーが出ます。
該当のソースコード
python
1# 出品データ作成 2uploadCSV = [] 3# 販売価格 4for i in items: 5 sellprice = -(-(500 * 0.8) // 0.9) 6 c = [i[0], # 商品画像名_1 7 i[1], # 商品画像名_2 8 i[2], # 商品画像名_3 9 i[3], # 商品画像名_4 10 i[4], # 商品画像名_5 11 i[5], # 商品画像名_6 12 i[6], # 商品画像名_7 13 i[7], # 商品画像名_8 14 i[8], # 商品画像名_9 15 i[9], # 商品画像名_10 16 f"{title}"[:130], # 商品名 17 f"\n{setumei[:2900]}", # 商品説明 18 "", # SKU1_種類 19 100, # SKU1_在庫数 20 "", # SKU1_商品管理コード 21 "", # SKU1_JANコード 22 "", # SKU2_種類 23 "", # SKU2_在庫数 24 "", # SKU2_商品管理コード 25 "", # SKU2_JANコード 26 "", # SKU3_種類 27 "", # SKU3_在庫数 28 "", # SKU3_商品管理コード 29 "", # SKU3_JANコード 30 "", # SKU4_種類 31 "", # SKU4_在庫数 32 "", # SKU4_商品管理コード 33 "", # SKU4_JANコード 34 "", # SKU5_種類 35 "", # SKU5_在庫数 36 "", # SKU5_商品管理コード 37 "", # SKU5_JANコード 38 "", # SKU6_種類 39 "", # SKU6_在庫数 40 "", # SKU6_商品管理コード 41 "", # SKU6_JANコード 42 "", # SKU7_種類 43 "", # SKU7_在庫数 44 "", # SKU7_商品管理コード 45 "", # SKU7_JANコード 46 "", # SKU8_種類 47 "", # SKU8_在庫数 48 "", # SKU8_商品管理コード 49 "", # SKU8_JANコード 50 "", # SKU9_種類 51 "", # SKU9_在庫数 52 "", # SKU9_商品管理コード 53 "", # SKU9_JANコード 54 "", # SKU10_種類 55 "", # SKU10_在庫数 56 "", # SKU10_商品管理コード 57 "", # SKU10_JANコード 58 "", # ブランドID 59 sellprice, # 販売価格 60 categoryID, # カテゴリID 61 1, # 商品の状態 62 1, # 配送方法 63 "jp40", # 発送元の地域 64 3, # 発送までの日数 65 1 # 商品ステータス2:公開 66 ] 67 uploadCSV.append(c) 68 69print(len(uploadCSV)) 70 71import csv 72if len(uploadCSV) > 2: 73 # 二次元配列から出品用CSV作成 74 with open('C:\\Users\\user\\Desktop\\sample_writer.csv', 'w', encoding='shift-jis') as f: 75 writer = csv.writer(f, lineterminator="\n") 76 writer.writerows(uploadCSV) 77
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
①pandasでcsv作成してみましたが、同じエラーでした。
データフレームを作成
df = pd.DataFrame(uploadCSV, columns=["商品画像名_1", "商品画像名_2", "商品画像名_3", "商品画像名_4", "商品画像名_5", "商品画像名_6", "商品画像名_7", "商品画像名_8", "商品画像名_9", "商品画像名_10", "商品名", "商品説明", "SKU1_種類", "SKU1_在庫数", "SKU1_商品管理コード", "SKU1_JANコード", "SKU2_種類", "SKU2_在庫数", "SKU2_商品管理コード", "SKU2_JANコード", "SKU3_種類", "SKU3_在庫数", "SKU3_商品管理コード", "SKU3_JANコード", "SKU4_種類", "SKU4_在庫数", "SKU4_商品管理コード", "SKU4_JANコード", "SKU5_種類", "SKU5_在庫数", "SKU5_商品管理コード", "SKU5_JANコード", "SKU6_種類", "SKU6_在庫数", "SKU6_商品管理コード", "SKU6_JANコード", "SKU7_種類", "SKU7_在庫数", "SKU7_商品管理コード", "SKU7_JANコード", "SKU8_種類", "SKU8_在庫数", "SKU8_商品管理コード", "SKU8_JANコード", "SKU9_種類", "SKU9_在庫数", "SKU9_商品管理コード", "SKU9_JANコード", "SKU10_種類", "SKU10_在庫数", "SKU10_商品管理コード", "SKU10_JANコード", "ブランドID", "販売価格", "カテゴリID", "商品の状態", "配送方法", "発送元の地域", "発送までの日数", "商品ステータス"])
CSV ファイル出力
df.to_csv("C:\Users\user\Desktop\sample_writer.csv", encoding="shift-jis", index=False)
結果の表示
df
②販売価格の部分を次にしても、同じエラーでした。
・タイプをintにする
・タイプをfloatにする
・頭に「'」をいれる
・終わりに「.0」を入れる
③csv作成時のエンコードをutf-8にする。
④販売価格を「99999」にしたらアップロードできました。しかし、計算式を販売価格に反映させる方法が分かりません。。
補足
何卒宜しくお願い致します。
![guest](/img/icon/icnUserSample.jpg)
回答1件
あなたの回答
tips
プレビュー