process complete parts list although some failed
fall back to API requests if web page scanning fails