Spinner Simon Harmer led an inspired South African attack to leave India in trouble at 102-4 at the first break on day three of the second Test on Monday.

India trail by 387 in response to South Africa's 489 on a batting-friendly pitch in Guwahati.

Skipper Rishabh Pant, on six, and Ravindra Jadeja, who was yet to score, were batting at the break.

Play starts 30 minutes early in the northeastern city because of sunsets and the order of the breaks is reversed, meaning the shorter tea interval comes before lunch.

After winning the first Test in the two-match series, South Africa are chasing a first series win in India since Hansie Cronje's team triumphed in 2000.

Yashasvi Jaiswal lost overnight partner KL Rahul in the first hour of play before reaching his 13th Test half-century.

Left-arm spinner Keshav Maharaj dismissed Rahul for 22 on a delivery that turned and jumped off the turf to take the edge, and was caught by Aiden Markram at first slip.

Spinners including Maharaj (1-29) and Harmer (2-39) have got turn but opener Jaiswal used the sweep to good effect and took on the bowlers, hitting seven fours and one six until his departure for 58.

Harmer forced Jaiswal to mistime a shot to backward point and in his next over the bowler had Sai Sudharsan caught at mid-wicket for 15.

Marco Jansen then removed Dhruv Jurel for a duck to further put India on the back foot as they attempt to stay alive.

World Test champions South Africa grabbed the early advantage with a big first-innings total after they elected to bat.

Senuran Muthusamy top-scored with 109.