Contribute to our GoFundMe Campaign

Contribute to our GoFundMe Campaign

https://www.gofundme.com/f/6ek65t-1000

This campaign is to raise money to provide education and training through free youtube videos and youtube courses. The training will focus on Web, Mobile Development to AI and Machine Learning. In future, we can extend into social science, science, and business. The majority (80 to 90%) of the collected money will be primarily used to pay the teachers other than myself where the rest can be used for operational expenses as I see fit.

I myself have provided efforts to create training videos in the past. I also have conducted free online training sessions on Facebook. This campaign is to raise money to hire qualified teachers from developing countries who might also have a financial need to create training videos and courses for a youtube channel.

Facebook pages and groups will be utilized for student teacher communications in addition to youtube channel comments.

Target audience/students will be anyone over the entire world who wants to learn the topics created.

Youtube Channel:
Youtube Channel for Learning and Training

*** . *** *** . *** . *** . ***

Training Courses: http://Training.SitesTree.com
Blog
: http://Bangla.SaLearningSchool.com, http://SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net
Youtube: https://www.youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists
Medium: https://medium.com/@SayedAhmedCanada


Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/salearningschool

https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Join, Discuss, and Thrive:
Finance: https://www.facebook.com/groups/1792339521056034

Bangladesh and Canada: https://www.facebook.com/groups/398414183875009

Bangladesh: IT & Eng: Canada: https://www.facebook.com/groups/480297675634630

BUETians in Ontario: https://www.facebook.com/groups/371982239854027

Worldwide IT: https://www.facebook.com/groups/28362061867

JustEtc: https://www.facebook.com/JustETC-Technologies-Inc-289864738261

Magento 2 Useful and Important CLI Commands List

"Cache CLI (Status, Enable, Disable, Clean, Flush)

php bin/magento cache:clean Cleans cache type(s) php bin/magento cache:disable Disables cache type(s) php bin/magento cache:enable Enables cache type(s) php bin/magento cache:flush Flushes cache storage used by cache type(s) php bin/magento cache:status" Checks cache status

"

Also Check:
http://bangla.salearningschool.com/recent-posts?s=bin%2Fmagento

Also Check:
http://bangla.salearningschool.com/recent-posts?s=magento

Also, Check:
Youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists

Check the details at:
Magento 2 Useful and Important CLI Commands List

Ref: https://hiteshvaghasiya.com/magento-2-daily-useful-cli-commands-list

*** . *** *** . *** . *** . ***

Training Courses: http://Training.SitesTree.com
Blog
: http://Bangla.SaLearningSchool.com, http://SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net
Youtube: https://www.youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists
Medium: https://medium.com/@SayedAhmedCanada


Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/salearningschool

https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Join, Discuss, and Thrive:
Finance: https://www.facebook.com/groups/1792339521056034

Bangladesh and Canada: https://www.facebook.com/groups/398414183875009

Bangladesh: IT & Eng: Canada: https://www.facebook.com/groups/480297675634630

BUETians in Ontario: https://www.facebook.com/groups/371982239854027

Worldwide IT: https://www.facebook.com/groups/28362061867

JustEtc: https://www.facebook.com/JustETC-Technologies-Inc-289864738261

How to Upload Product Data to an Ecommerce Shop

What is Big Data?

What is Big Data? Is Big-data a platform or just huge volume of data? What are 3 V’s of Big Data? What are 5 V’s of Big Data? What are 6 V’s of Big Data?

https://www.youtube.com/embed/DhtkQgzEW5M?list=PLUA7SYgJYDFpIHm2vfzdH0slgkCfqgdds

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Training Courses: http://Training.SitesTree.com
Blog
: http://Bangla.SaLearningSchool.com, http://SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net
Youtube: https://www.youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists
Medium: https://medium.com/@SayedAhmedCanada

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/salearningschool

https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Join, Discuss, and Thrive:
Finance: https://www.facebook.com/groups/1792339521056034

Bangladesh and Canada: https://www.facebook.com/groups/398414183875009

Bangladesh: IT & Eng: Canada: https://www.facebook.com/groups/480297675634630

BUETians in Ontario: https://www.facebook.com/groups/371982239854027

Worldwide IT: https://www.facebook.com/groups/28362061867

JustEtc: https://www.facebook.com/JustETC-Technologies-Inc-289864738261

What is big data?

What is Big Data? Is Big-data a platform or just huge volume of data? What are 3 V’s of Big Data? What are 5 V’s of Big Data? What are 6 V’s of Big Data?

<iframe width="732" height="412" src="https://www.youtube.com/embed/DhtkQgzEW5M?list=PLUA7SYgJYDFpIHm2vfzdH0slgkCfqgdds" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Training Courses: http://Training.SitesTree.com
Blog
: http://Bangla.SaLearningSchool.com, http://SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net
Youtube: https://www.youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists
Medium: https://medium.com/@SayedAhmedCanada

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/salearningschool

https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Join, Discuss, and Thrive:
Finance: https://www.facebook.com/groups/1792339521056034

Bangladesh and Canada: https://www.facebook.com/groups/398414183875009

Bangladesh: IT & Eng: Canada: https://www.facebook.com/groups/480297675634630

BUETians in Ontario: https://www.facebook.com/groups/371982239854027

Worldwide IT: https://www.facebook.com/groups/28362061867

JustEtc: https://www.facebook.com/JustETC-Technologies-Inc-289864738261

Calculate Your Categorized Expenses for Tax Purpose

Calculate Your Categorized Expenses for Tax Purpose.

The purpose of this note (i.e. code) is to calculate expenses (revenues) by categories. For the context, read the notes from

Write Tax and Financial Software
Code examples in relation to writing Tax and Financial Softwaremedium.com

1*jpQZSf1XYnLB7bx2DlaOsg.jpeg

At this point, you have spreadsheets for all of your bank accounts and credit cards. You need to merge them into one master sheet. Make sure that you align/match the columns properly. Some cards will use two columns for debit and credit. Others will just use one with +ve and -ve signs. You will need to separate them into two fields. The master spreadsheet as this code will use used three columns such as ‘Expense Debit’, ‘Credit’, ‘All Money’.

First, you need to find the list of expenses and the associated categories and subcategories. You will also need to put thoughts and decide what goes on which expense categories. A simple way is keep this in your head or in paper/note, and use them in the code. The simple way.

Well if you are really making a software then it has to be way more structured. A better way to do can be: Put all categories and subcategories in a JSON file (can be enough), or in an xml file (considered worse than JSON), or in a database table such as MySQL/SQL server table (can be seen as overkill, however, depending — you might find it easier to update (based on size, your skills, tool availability, or writing an UI and DB update code) ). Sure, the last sentence got messy — you know what I mean. I am not trying to be perfectionist here.

The same way, you can keep what goes into what category in JSON/XML/Database. You might want to think based on expense description based on which words or cards or accounts — what will go where. Then write the code to assign categories and calculate sum by categories.

The code will simply look for words in the description and based on search result, the category column will be updated. Then the sum will be based on the categories. Yes, you can assign subcategory the same way. And then calculate sum of subcategories.

# some simple code are given below

import os;
import glob;
import pandas as pd;
import math;
data_folder = ‘./’;
os.chdir(data_folder);
# read data, verify data manually
df = pd.read_csv(‘to_process_all_combined_transactions_assign_category.csv’)
df.head(3)
#Save to a temp file, to be safe
df.to_csv(‘temp_to_process_all_combined_transactions_assign_category.csv’);
# read data, verify data manually
df = pd.read_csv(‘temp_to_process_all_combined_transactions_assign_category.csv’)
df.head(3);
# Find Donation amount : FB Fundraiser
#check
df[df[‘Description 1’].str.contains(‘FBFUNDRAISER’, na = False, case = False )][{‘Description 1’, ‘Card Owner’, ‘Card’, ‘Expense Debit’}]
# assign category
df.loc[df[‘Description 1’].str.contains(‘FBFUNDRAISER’, na = False, case = False ), ‘Category’] = ‘Donation’
# keep saving if you want
df.to_csv(‘temp_to_process_all_combined_transactions_assign_category.csv’);
# Donation Sum
donation = sum(df[df[‘Description 1’].str.contains(‘FBFUNDRAISER’, na = False, case = False )][‘Expense Debit’]);
print(‘Donation from Business Cards:’, donation);
# Domain and Hosting Expense
df[df[‘Description 1’].str.contains(‘AWS’, na = False, case = False )][{‘Description 1’, ‘Card Owner’, ‘Card’, ‘Expense Debit’}]
df.loc[df[‘Description 1’].str.contains(‘AWS’, na = False, case = False ), ‘Category’] = ‘Domain and Hosting’
df[df[‘Description 1’].str.contains(‘HOSTGATOR’, na = False, case = False )][{‘Description 1’, ‘Card Owner’, ‘Card’, ‘Expense Debit’}]
df.loc[df[‘Description 1’].str.contains(‘HOSTGATOR’, na = False, case = False ), ‘Category’] = ‘Domain and Hosting’
df[df[‘Description 1’].str.contains(‘godaddy’, na = False, case = False )][{‘Description 1’, ‘Card Owner’, ‘Card’, ‘Expense Debit’}]
df.loc[df[‘Description 1’].str.contains(‘godaddy’, na = False, case = False ), ‘Category’] = ‘Domain and Hosting’
df[df[‘Description 1’].str.contains(‘VULT’, na = False, case = False )][{‘Description 1’, ‘Card Owner’, ‘Card’, ‘Expense Debit’}]
df.loc[df[‘Description 1’].str.contains(‘VULT’, na = False, case = False ), ‘Category’] = ‘Domain and Hosting’
df[df[‘Category’].str.contains(‘Domain’, na = False, case = False )][{‘Description 1’, ‘Expense Debit’}]
domain_hosting = sum(df[df[‘Category’].str.contains(‘Domain’, na = False, case = False )][‘Expense Debit’])
print(‘Domain from Business Cards:’, domain_hosting);
df.to_csv(‘temp_to_process_all_combined_transactions_assign_category.csv’);
# Section Find all Car Gas Expenses
df.loc[ df[‘Description 1’].str.contains(‘ESSO’, na = False, case = False ), ‘Category’ ] = ‘Car Gas’;
df.loc[ df[‘Description 1’].str.contains(‘SHELL’, na = False, case = False ), ‘Category’ ] = ‘Car Gas’;
df.loc[ df[‘Description 1’].str.contains(‘MOBIL Toronto’, na = False, case = False ), ‘Category’ ] = ‘Car Gas’;
df.loc[ df[‘Description 1’].str.contains(‘Petro’, na = False, case = False ), ‘Category’ ] = ‘Car Gas’;
# Car Gas Sum
df[df[‘Category’].str.contains(‘Car Gas’, na=False, case=False)] 
sum(df[df[‘Category’].str.contains(‘Car Gas’, na=False, case=False)][‘Expense Debit’])
My goal was not to write great articles; however, share little bit of stuff that I have

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Training Courses: http://Training.SitesTree.com
Blog
: http://Bangla.SaLearningSchool.com, http://SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net
Youtube: https://www.youtube.com/channel/UCHrtq0pV8mEuTLGd2-Lp9ig/playlists
Medium: https://medium.com/@SayedAhmedCanada

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/salearningschool

https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Join, Discuss, and Thrive:
Finance: https://www.facebook.com/groups/1792339521056034

Bangladesh and Canada: https://www.facebook.com/groups/398414183875009

Bangladesh: IT & Eng: Canada: https://www.facebook.com/groups/480297675634630

BUETians in Ontario: https://www.facebook.com/groups/371982239854027

Worldwide IT: https://www.facebook.com/groups/28362061867

JustEtc: https://www.facebook.com/JustETC-Technologies-Inc-289864738261

All About Magento 2: Indexing/reindexing

[Do not forget to search this site to learn/find related information]

# Use reset to reset current indexing status
# You may not need to use this all the time
# You will need to use this when you see invalid indexing status or you see index locked;
# When irrespective of that, you want to reindex, reset first

sudo php bin/magento indexer:reset

# want to see reset status of all indexes use the command below
sudo php bin/magento indexer:status [indexer]

# to see status of one index
sudo php bin/magento indexer:status [index name, one from the list given at the end]

# to check information and status on indexing/reindexing
sudo php bin/magento indexer:info

# execute the reindex: i.e. reindex
sudo php bin/magento indexer:reindex

# you might find these commands useful

# i.e. when to reindex such as real-time (update on save) or by “Schedule and cron”

sudo php bin/magento indexer:show-mode
sudo php bin/magento indexer:show-mode [indexer]
sudo php bin/magento indexer:set-mode {realtime|schedule} [indexer]

# the index types are provided below. If you just want to work with one of them, use the term from the below list
and put on the right side of each of the command above

# design_config_grid Design Config Grid
# customer_grid Customer Grid
# catalog_category_product Category Products
# catalog_product_category Product Categories
# catalogrule_rule Catalog Rule Product
# catalog_product_attribute Product EAV
# cataloginventory_stock Stock
# inventory Inventory
# catalogrule_product Catalog Product Rule
# catalog_product_price Product Price
# scconnector_google_remove Google Product Removal Feed
# scconnector_google_feed Google Product Feed
# catalogsearch_fulltext Catalog Search

###### If you want to configure from the admin menu, use: System -> index and then do as the image below shows:

***. ***. ***

Note: Older short-notes from this site are posted on Medium: https://medium.com/@SayedAhmedCanada

*** . *** *** . *** . *** . ***
Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)
MSc. in Comp. Sc. (U of Manitoba, Canada)
MSc. in Data Science and Analytics (Ryerson University, Canada)
Linkedin: https://ca.linkedin.com/in/sayedjustetc

Blog: http://Bangla.SaLearningSchool.com, http://SitesTree.com
Training Courses: http://Training.SitesTree.com
8112223 Canada Inc/Justetc: http://JustEtc.net

Facebook Groups/Forums to discuss (Q & A):
https://www.facebook.com/banglasalearningschool
https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Python: Ecommerce: Part — 9: Incorporate Images in your Magento 2 product Upload File

 
 
 
In [112]:
#magento_1_upload_file_with_image_urls_no_desc['magento_2_upload_file_with_data_no_desc['gallery_image_url_1'] = raw_df['Additional Product Picture 1']magento_2_upload_file_with_data_no_desc['gallery_image_url_2'] = raw_df['Additional Product Picture 2']magento_2_upload_file_with_data_no_desc['gallery_image_url_3'] = raw_df['Additional Product Picture 3']magento_2_upload_file_with_data_no_desc['gallery_image_url_4'] = raw_df['Additional Product Picture 4']magento_2_upload_file_with_data_no_desc['gallery_image_url_5'] = raw_df['Additional Product Picture 5']magento_2_upload_file_with_data_no_desc['gallery_image_url_6'] = raw_df['Additional Product Picture 6']magento_2_upload_file_with_data_no_desc['gallery_image_url_7'] = raw_df['Additional Product Picture 7']magento_2_upload_file_with_data_no_desc['gallery_image_url_8'] = raw_df['Additional Product Picture 8']magento_2_upload_file_with_data_no_desc['gallery_image_url_9'] = raw_df['Additional Product Picture 9']magento_2_upload_file_with_data_no_desc['gallery_image_url_10'] = raw_df['Additional Product Picture 10']magento_2_upload_file_with_data_no_desc['image'] = raw_df['Main Product Picture']magento_2_upload_file_with_data_no_desc['small_image'] = raw_df['Additional Product Picture 1']

In [113]:

magento_2_upload_file_with_data_no_desc.head(2)

Out[113]:

product_idskunameraw_pricecheapest_courier_shippingproduct_eanshopforsoul_profitebay_profitshopforsoul_costprice…gallery_image_url_4gallery_image_url_5gallery_image_url_6gallery_image_url_7gallery_image_url_8gallery_image_url_9gallery_image_url_10imagesmall_imageremote_image_url030399shopforsoul-A01AL3301111Black 3x3x3 MoYu AoLong V2 Puzzle-A01AL330111112.90500.06941377886603.0109.658109.658669.21778.87.

2 rows × 76 columns

In [114]:

magento_2_upload_file_with_data_no_desc.to_csv(output_folder + 'images_all_to_upload_without_description_' + input_file_name + '_magento_2_' + today + '.csv',index=False, encoding='utf8')

In [115]:

Partition the data file into 20 partitions.

partition = 20increment =  int(round(magento_2_upload_file_with_data_no_desc.shape[0]/partition,0)) + 1incrementstart = 0for count in range(0, partition):   start += increment   p = magento_2_upload_file_with_data_no_desc[start:start + increment]   #print(p.head(1))   p.to_csv(output_folder + 'partition-' + str(count) + '-image-magento2_all_to_upload_with_description_' + today + '.csv', index=False)

In [116]:

df_new_template = pd.DataFrame()df_new_template = pd.read_csv(template_folder + 'import-magento2-all-but-descriptions.csv')df_new_template.head(1)

Out[116]:

product_idskunameraw_pricedummycheapest_courier_shippingproduct_eanshopforsoul_profitebay_profitshopforsoul_cost…gallery_image_url_4gallery_image_url_5gallery_image_url_6gallery_image_url_7gallery_image_url_8gallery_image_url_9gallery_image_url_10imagesmall_imageremote_image_url028471ShopForSoul-PCO_004SZTH7OnePlus 7 Smartphone 12GB RAM 256GB ROM Snapdr…856.0350012.036941377796025182.82182.821097.21

1 rows × 77 columns

In [117]:

magento_2_upload_file_with_data_no_desc.columns, df_new_template.columns

Out[117]:

(Index(['product_id', 'sku', 'name', 'raw_price', 'cheapest_courier_shipping',
'product_ean', 'shopforsoul_profit', 'ebay_profit', 'shopforsoul_cost',
'price', 'special_price', 'special_from_date', 'special_to_date',
'ebay_cost', 'ebay_list_price', 'amazon_profit', 'amazon_our_cost',
'amazon_list_price', 'amazon_special_price', 'amazon_list_price_usd',
'amazon_special_price_usd', 'amazon_list_price_gbp',
'amazon_special_price_gbp', 'amazon_list_price_eu',
'amazon_special_price_eu', 'weight', 'is_in_stock', 'categories',
'visibility', 'height', 'width', 'length', 'status',
'attribute_set_code', 'product_online', 'product_type',
'product_websites', 'root_category', 'store_view_code',
'tax_class_name', '_attribute_set', 'qty', 'min_qty',
'use_config_min_qty', 'is_qty_decimal', 'backorders',
'use_config_backorders', 'min_sale_qty', 'use_config_min_sale_qty',
'max_sale_qty', 'use_config_max_sale_qty', 'notify_stock_qty',
'use_config_notify_stock_qty', 'manage_stock',
'use_config_manage_stock', 'stock_status_changed_auto',
'use_config_qty_increments', 'qty_increments',
'use_config_enable_qty_inc', 'enable_qty_increments',
'is_decimal_divided', '_media_is_disabled', 'tax_class_id',
'gallery_image_url_1', 'gallery_image_url_2', 'gallery_image_url_3',
'gallery_image_url_4', 'gallery_image_url_5', 'gallery_image_url_6',
'gallery_image_url_7', 'gallery_image_url_8', 'gallery_image_url_9',
'gallery_image_url_10', 'image', 'small_image', 'remote_image_url'],
dtype='object'),
Index(['product_id', 'sku', 'name', 'raw_price', 'dummy',
'cheapest_courier_shipping', 'product_ean', 'shopforsoul_profit',
'ebay_profit', 'shopforsoul_cost', 'price', 'special_price',
'special_from_date', 'special_to_date', 'ebay_cost', 'ebay_list_price',
'amazon_profit', 'amazon_our_cost', 'amazon_list_price',
'amazon_special_price', 'amazon_list_price_usd',
'amazon_special_price_usd', 'amazon_list_price_gbp',
'amazon_special_price_gbp', 'amazon_list_price_eu',
'amazon_special_price_eu', 'weight', 'is_in_stock', 'categories',
'root_category', 'visibility', 'height', 'width', 'length', 'status',
'product_type', '_attribute_set', 'qty', 'min_qty',
'use_config_min_qty', 'is_qty_decimal', 'backorders',
'use_config_backorders', 'min_sale_qty', 'use_config_min_sale_qty',
'max_sale_qty', 'use_config_max_sale_qty', 'notify_stock_qty',
'use_config_notify_stock_qty', 'manage_stock',
'use_config_manage_stock', 'stock_status_changed_auto',
'use_config_qty_increments', 'qty_increments',
'use_config_enable_qty_inc', 'enable_qty_increments',
'is_decimal_divided', '_media_is_disabled', 'tax_class_id',
'tax_class_name', 'store_view_code', 'attribute_set_code',
'product_websites', 'product_online', 'gallery_image_url_1',
'gallery_image_url_2', 'gallery_image_url_3', 'gallery_image_url_4',
'gallery_image_url_5', 'gallery_image_url_6', 'gallery_image_url_7',
'gallery_image_url_8', 'gallery_image_url_9', 'gallery_image_url_10',
'image', 'small_image', 'remote_image_url'],
dtype='object'))

In [118]:

set(df_new_template.columns).difference(set(magento_2_upload_file_with_data_no_desc))

Out[118]:

{'dummy'}

In [119]:

set(magento_2_upload_file_with_data_no_desc ).difference(set(df_new_template.columns))

Out[119]:

set()

— — — — — — — — — — –

All code in one block.

magento_2_upload_file_with_data_no_desc[‘gallery_image_url_1’] = raw_df[‘Additional Product Picture 1’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_2’] = raw_df[‘Additional Product Picture 2’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_3’] = raw_df[‘Additional Product Picture 3’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_4’] = raw_df[‘Additional Product Picture 4’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_5’] = raw_df[‘Additional Product Picture 5’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_6’] = raw_df[‘Additional Product Picture 6’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_7’] = raw_df[‘Additional Product Picture 7’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_8’] = raw_df[‘Additional Product Picture 8’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_9’] = raw_df[‘Additional Product Picture 9’]
magento_2_upload_file_with_data_no_desc[‘gallery_image_url_10’] = raw_df[‘Additional Product Picture 10’]
magento_2_upload_file_with_data_no_desc[‘image’] = raw_df[‘Main Product Picture’]
magento_2_upload_file_with_data_no_desc[‘small_image’] = raw_df[‘Additional Product Picture 1’]
magento_2_upload_file_with_data_no_desc[‘remote_image_url’] = raw_df[‘Main Product Picture’]
# In[ ]:magento_2_upload_file_with_data_no_desc.head(2)# In[ ]:magento_2_upload_file_with_data_no_desc.to_csv(output_folder + ‘images_all_to_upload_without_description_’ + input_file_name + ‘_magento_2_’ + today + ‘.csv’,index=False, encoding=’utf8')# In[ ]:partition = 20
increment = int(round(magento_2_upload_file_with_data_no_desc.shape[0]/partition,0)) + 1
increment
start = 0
for count in range(0, partition):
start += increment
p = magento_2_upload_file_with_data_no_desc[start:start + increment]
#print(p.head(1))
p.to_csv(output_folder + ‘partition-’ + str(count) + ‘-image-magento2_all_to_upload_with_description_’ + today + ‘.csv’, index=False)
# In[ ]:df_new_template = pd.DataFrame()
df_new_template = pd.read_csv(template_folder + ‘import-magento2-all-but-descriptions.csv’)
df_new_template.head(1)
# In[ ]:magento_2_upload_file_with_data_no_desc.columns, df_new_template.columns# In[ ]:set(df_new_template.columns).difference(set(magento_2_upload_file_with_data_no_desc))# In[ ]:set(magento_2_upload_file_with_data_no_desc ).difference(set(df_new_template.columns))# In[ ]:

Medium: https://medium.com/@SayedAhmedCanada

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)

MSc. in Comp. Sc. (U of Manitoba, Canada)

MSc. in Data Science and Analytics (Ryerson University, Canada)

Linkedinhttps://ca.linkedin.com/in/sayedjustetc

Bloghttp://Bangla.SaLearningSchool.comhttp://SitesTree.com

Training Courses: http://Training.SitesTree.com

8112223 Canada Inc/Justetchttp://JustEtc.net

Facebook Groups/Forums to discuss (Q & A):

https://www.facebook.com/banglasalearningschool

https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Build Ecommerce Software and Systems

Build Ecommerce Software and Systems

 
 
 
 
 
 
 
8112223 Canada Inc. (Justetc)

WRITTEN BY

Software Engineer, Data Scientist, Machine Learning Engineer.

 
Build Ecommerce Software and Systems

Build Ecommerce Software and Systems

Write the first response

More From Medium

Python: Ecommerce: Part — 8: Calculate Minimum and Maximum Prices for your products.

Related

To make sure, when you adjust prices based on other sellers, you will not lose money. You can upload such files on Amazon Separately.

Min and max price calculation.

This is done for UK/GBP. You can do the same for other market places.

In [ ]:

#sku    price   minimum-seller-allowed-price    maximum-seller-allowed-price    quantity    handling-time   fulfillment-channel
minimum_df_uk = pd.DataFrame()
minimum_df_uk['sku'] = 'shopforsoul-' + price_calculation_df['sku']
minimum_df_uk['price'] = price_calculation_df['amazon_special_price_gbp']
minimum_df_uk['minimum-seller-allowed-price'] = price_calculation_df['amazon_gbp_minimum_price']
minimum_df_uk['maximum-seller-allowed-price'] = price_calculation_df['amazon_list_price_gbp']
minimum_df_uk['quantity'] = 5
minimum_df_uk['handling-time'] = 6
minimum_df_uk['fulfillment-channel'] = 'default'
minimum_df_uk.head()
minimum_df_uk.to_csv(output_folder + 'uk_gbp_max_min_price.csv', sep='\t')

In [ ]:

df = pd.read_csv(output_folder + 'uk_gbp_max_min_price.csv',sep='\t')
df.head()

Medium: https://medium.com/@SayedAhmedCanada

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)

MSc. in Comp. Sc. (U of Manitoba, Canada)

MSc. in Data Science and Analytics (Ryerson University, Canada)

Linkedin: https://ca.linkedin.com/in/sayedjustetc

Blog: http://Bangla.SaLearningSchool.com, http://SitesTree.com

Training Courses: http://Training.SitesTree.com

8112223 Canada Inc/Justetc: http://JustEtc.net

Facebook Groups/Forums to discuss (Q & A):

https://www.facebook.com/banglasalearningschool

https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Python: Ecommerce: Part — 7: Partition a Data File (with product information) into Multiple Files.

In previous steps, we created a product data file to be uploaded to Magento 2 (from supplier data). However, there is a limit, how big a file can be uploaded to Magento 2 for product data import. Hence, this code will divide the data file into multiple files. This data file does not include image URLs. We will go there. If you have image URLs, magento upload process can upload images as well. In that case, the file becomes big as well as the product update can take a long time.

magento_2_upload_file_with_data_no_desc.to_csv( output_folder + 'no-image-all_to_upload_without_description_' + input_file_name + '_magento_2_' + today + '.csv',index=False, encoding='utf8')

In [98]:

# divide the output into multiple files

In [99]:

partition = 20increment =  int(round(magento_2_upload_file_with_data_no_desc.shape[0]/partition,0)) + 1incrementstart = 0for count in range(0, partition):   start += increment   p = magento_2_upload_file_with_data_no_desc[start:start + increment]   #print(p.head(1))   p.to_csv(output_folder + 'partition-' + str(count) + '-no-image-  magento2_all_to_upload_with_description_' + today + '.csv', index=False);

All code in One Block

# divide the output into multiple files# In[106]:partition = 20
increment = int(round(magento_2_upload_file_with_data_no_desc.shape[0]/partition,0)) + 1
incrementstart = 0
for count in range(0, partition):
 start += increment
 p = magento_2_upload_file_with_data_no_desc[start:start + increment]
 #print(p.head(1))
 p.to_csv(output_folder + ‘partition-’ + str(count) + ‘-no-image-magento2_all_to_upload_with_description_’ + today + ‘.csv’, index=False);# In[107]:

Medium: https://medium.com/@SayedAhmedCanada

*** . *** *** . *** . *** . ***

Sayed Ahmed

BSc. Eng. in Comp. Sc. & Eng. (BUET)

MSc. in Comp. Sc. (U of Manitoba, Canada)

MSc. in Data Science and Analytics (Ryerson University, Canada)

Linkedinhttps://ca.linkedin.com/in/sayedjustetc

Bloghttp://Bangla.SaLearningSchool.comhttp://SitesTree.com

Training Courses: http://Training.SitesTree.com

8112223 Canada Inc/Justetchttp://JustEtc.net

Facebook Groups/Forums to discuss (Q & A):

https://www.facebook.com/banglasalearningschool

https://www.facebook.com/justetcsocial

Get access to courses on Big Data, Data Science, AI, Cloud, Linux, System Admin, Web Development and Misc. related. Also, create your own course to sell to others. http://sitestree.com/training/

Build Ecommerce Software and Systems

Build Ecommerce Software and Systems

8112223 Canada Inc. (Justetc)

WRITTEN BY

Software Engineer, Data Scientist, Machine Learning Engineer.

Build Ecommerce Software and Systems

Build Ecommerce Software and Systems

Write the first response