d1 = df.query('Col1 != "A"').drop('Col1', 1)
d2 = d1.assign(Prod=d1.prod(1)).groupby(pd.TimeGrouper('D'))['Col2', 'Prod'
    ].sum()
d2.Prod.div(d2.Col2)
Weighted average, grouped by day, of 2 columns based on criteria in 3rd column of pandas dataframe