They can both fetch daily prices but bean-price is more Beancount-specific and pricehist has some more flexibility.
With bean-price you can ask for a price on a day from the command line. However, to get prices for a time range you need to give it a Beancount file with a commodity directive at the start date. You can invert prices, which will be rounded automatically. The output format is beancount price directives.
With pricehist everything is specified on the command line. You can ask for data for a time interval with a particular start and end. You can control rounding (--quantize) and invert prices. The output format can be CSV, Beancount, Ledger or SQL for GnuCash. There are options for formatting or rewriting parts of the output so you usually won't need to manually reformat things.