Once the vote count is complete and confirmed:
1. The party with the highest number of votes is allocated the first seat. The candidate at the top of the party's list is elected.
2. The votes of the party winning the first seat are then divided by the number of seats they have won + 1 ( i.e. 2 ) and the resultant number of votes go forward to be compared with the number of votes for the other parties and candidates to decide who wins the next seat.
3. The exercise is then repeated. As each successful party wins its first seat, its votes are divided by 2. This divisor is then increased by 1 each time this party wins a further seat. (NB it is the total number of votes cast for the party which is divided by the divisor, NOT the number resulting from the previous division.)
4. In the event that an independent candidate is elected or all the candidates on a party's list have been elected, the votes cast for that party are excluded from the remainder of the exercise.
This generalises plurality to election of k representatives: scale the votes obtained by each party by dividing them by a common factor chosen so that, when you round the new numbers down to the nearest integers, they add up to k. That's how many representatives each party gets.
My region (North-west England) has suffered the embarrassment of having elected a BNP candidate (one of 8 representatives) with the Green party narrowly failing to edge them out. Note that the number of votes obtained by the BNP actually went down. In my opinion, by putting up their leader as candidate in our region, we were unfairly targeted by them, and this result has more to do with low voter turnout. Both the Greens and the Lib Dems deserved to do better than they did.