ну ессно, он же не работает ))
именно потому что элементы могут быть, а могут и не быть
у тебя сейчас быть-не быть это 6 или 9, а бывает и так что 99% есть ( при парсинге) а в 1% нет элемента )
и парсер надо писать который не закрешится
надо учиться более высокоуровневому языку, он не такой сложный