Why we use the present perfect rather than the present perfect progressive?
Passengers who (have spent) days sleeping on the airport floor are perplexed as to why only one third of flights are leaving.
You can use either there. Have been spending days sleeping is a little awkward because of the repeated -ing, but it's perfectly possible.
I think have spent is more natural, but have been spending puts more emphasis on how the activity continued through time, which you might well wish to do in this particular sentence.
In addition to Colin`s answer I would like to say that "to spend" is often used with present perfect. "Days" can be viewed as a duration of time = how long, which requires the present perfect continuous , but it can also be viewed as an amount of time = how much, which requires the present perfect simple.