So apparently Qatar Airways has multiple baggage rules. Some routes (to/from US, Canada, Brazil, Argentina) have rules based both on number of pieces and weight, as most other airlines (as far as I know).
In your case (travel between Europe and Asia via Doha), the baggage allowance is only based on the weight you carry. You are allowed 23 kg as checked-in bags, and as carry-on,
One piece, not to exceed 7 kg and 50 x 37 x 25 cm. There are still usual rules for the maximum weight of a piece of luggage: 32 kg.
EDIT : as @JoErNanO commented, the rules changed (and price increased) for purchasing extra luggage allowance. The new rules follow.
To answer your first question, yes you can pre-purchase baggage allowance online, and it is cheaper than at the airport. You can purchase this extra allowance from the time you made the booking until 72 hours before the flight departure.
The prices depend on origin and destination, for travels from Europe to Far East areas, the price is 40USD per kg if you book online.
You can also pre-purchase baggage allowance at Qatar Airways offices (in cities, airports, or via phone) but it will be the same price as when you check in (more expensive than online, by 5-15USD/kg). For travels from Europe to Far East areas, the price is 50USD per kg.
Note that for transatlantic flights (to/from Argentina, Brazil, Canada and the USA), the pricing is different. One extra piece of luggage will be billed 200USD per piece online or 250USD per piece in an office or at the check-in. The price is different if the piece of luggage weighs too much : 50/65USD per kg (online/office prices).
For those traveling to Africa, there are bulk prices. If you travel with more than 5kg extra, you pay a cheaper price (around 10USD per kg). This purchase can only be done in Qatar Airways city offices, though, at least 24 hours before flight departure.
Note: 1 kg is 2.2 lbs.
To summarize, you can book online extra weight allowance and you will pay 40 USD per extra kg of baggage if you pre-purchase online at least 72 hours before your flight departure. If you just show up at the airport, you will pay 50USD per kg.