Maybe there is a magic cure for this, but for me it always turned out to be a combination of things.
A good tuneup is a good place to start, plugs. cables and cap.
Tune up, a tired CPS, low fuel pressure and even slow cranking from a tired battery can individually or all together add up to longer crank times.
Other things that have helped me some are cleaning the grounds and checking the CPS circuit for resistance (corroded connectors). A TPS wiring resistance check (corroded connectors) and TPS adjustment also seemed to help some. Cleaning connectors and grounds always seems to be benenfitial.
A sticky IAC, will also give you grief. On occasion my IAC gets sticky and I have to crank it forever to get it going.
Mine pops off (normally) after about 5-6 revolutions. A lot better than it used to be, before I cleaned up all the connectors and grounds, replaced the CPS, adjusted the TPS, cleaned and oiled the IAC and other assorted maintenance items.