I have a bus line with bus stops along the route.

The sample data looks like this:
LINESTRING (-70.57243474999999933 -33.37452829000000065, -70.57308152999999606 -33.37470645999999874, -70.57543062999999961 -33.37539473999999728, -70.57551596999999788 -33.3754228700000013, -70.57676012999999671 -33.37580358000000302, -70.57838608999999508 -33.37581671000000227, -70.5790643100000068 -33.37582045999999991, -70.58024559999999781 -33.37582420999999755, -70.58068577000000232 -33.37587485000000243, -70.5810989999999947 -33.37592361000000096, -70.58192544999999996 -33.3760173800000004, -70.58280580000000271 -33.37611865000000222)
POINT(-70.58176091969386334 -33.37599871220383818)
POINT(-70.58081166577235877 -33.37588970535671251)
POINT(-70.5789007062584659 -33.37581955540557743)
POINT(-70.57517086297514197 -33.3753186292262285)
POINT(-70.57426670966613358 -33.37505371514445329)
How can I order (add an order ID) the bus stops along the route?
Any Open Source Software is welcome. Preferably something that can be automated (QGIS, Python, PostGIS).
