What is the optimal structure for a Python project?
Structure of an index, match program
I think your idea will work, but only if it is really dictionary-based exact search. By that I mean that there are simple straightforward rules by which you could identify those attribute values. It might get messy if the product descriptions are inconsistent (like different structure, naming...). But still I imagine it could help you in lot of those simple cases where it is accurate and it will just let you handle all other more complicated products.
In your last point you mention font color - are you going to import data back to excel? If so, you should checkout openpyxl library. This will allow you to work with the actual xlsx file and you can use font formatting.
Also one step that might save you time is to analyze the data first. You could simply find all categories needed first, then maybe find the most common words per category and build your dictionary from that.
More on reddit.comVideos
How to structure backend Python project?