I think you may be misinformed: after all, there are plenty of curly headed blonds, and most people from lands bordering the Mediterranean are swarthy to various degrees. One of the darkest-skinned white people I ever knew was Greek; her family had been living in the hills near Sparta since Hector was a pup. Another was Jewish. None of that requires sub-Saharan ancestry. I doubt it has much to do with Hannibal; he, after all, was Carthaginian and they were Phoenicians, not blacks. There’s a good chance that his army included Berbers and similar people from North Africa, but again, those people are not black. Also, Hannibal didn’t occupy Italian soil for long. Sicily is very diverse, ethnically, having been colonized by the Greeks, invaded by the Vandals (a Germanic tribe that occupied North Africa), and held at various times by armies from Western Europe. Again, however, there was no widespread migration or invasion by blacks. Italy was a major commercial hub for a couple of thousand years, so undoubtedly there were traders (and slaves) from all over passing through; that would have included Moors (viz. Othello), again non-Negro Africans, and probably a few folks from sub-Saharan Africa, Nubia and Ethiopia. I doubt there were enough to change the complexion of Italy. Finally, let me comment that the ancient Greeks and Romans knew what blacks looked like, and they never mentioned that there was any population of them in Italy.