James Joseph Leo Shanahan (1 June 1901 – 8 September 1985) was an Australian rules footballer who played with Collingwood, Carlton and Fitzroy in the Victorian Football League (VFL). Shanahan was born in Western Australia, but came to the VFL from Horsham. A defender, he played in a back pocket for Collingwood in the 1925 VFL Grand Final and was on a half back flank in the 1926 VFL Grand Final. He finished on the losing team in both matches. He went to Carlton for the first part of the 1927 VFL season, playing in the seniors in rounds four and five. In 1928 Shanahan played 17 games with Fitzroy.