There is scientific proof that explains some food cravings. For example, it is known that stress will cause cravings for high-energy foods. Cravings for sugar and fat occur when stress causes the adrenal gland to secrete extra cortisol, which (through a set of other changes in response to stress, such as increased blood sugar levels) results in cravings. Scientific explanations for other cravings exist as well. One craving generally understood by medicine/science is a craving for salt. One of the many causes of craving salt is said to result from stress as well; only salt cravings are associated with prolonged stress that eventually depletes the adrenal gland's ability to produce cortisol (as opposed to sugar/fat cravings that can result from stress without the adrenal gland "running out juices").
These are just a few examples of the most common types of cravings.