To manipulate with the appearance of the widgets you can use next plugins:
Here you can find woocommerce conditional tags: https://docs.woothemes.com/document/conditional-tags/
Here you can find WordPress Conditional tags: https://codex.wordpress.org/Conditional_Tags
For example you can create different filters by shortcode [woof] for each category page using its attributes tax_only and by_only. Then drop usual text-widget on the sidebar and write there shortcode with its attributes. After that write in the widget-logic textarea condition to display current widget on the selected page(s) only.