DevMan : кстати, оказывается не так уж и сложно, попробовал сегодня собрать пару проектов: парсер(lxml) и игрушку(pysfml). но все-таки это сложнее, чем нажать F7 в IDE.
Только лучше остерегаться использования глобальных переменных для таких случаев, а то чревато ошибками. лучше явно в функцию передавать или классами как уже сказали. А глобальные переменные разве что для констант можно использовать. И почитать стоит не столько про оператор global, сколько про область видимости переменных в питоне.
Дмитрий: я в курсе, только я обычно использую requests+lxml, а говорил я конкретно про PHP, как пример разделения, т.к. применение PHP для парсинга у меня не на слуху.
garex: вы просто тело тега a не заполнили, там принцип такой же как в html, есть атрибут href и есть тело тэга, если тело пустое, то и в браузере ничего не отобразится.