Форум сайта python.su
0
Пытаюсь выдрать ссылки:
import re body = html rex = re.compile(r'(\href=(\"|\'|\.\.)([^>]*?)(\"|\'|(class=))([^>]*?)>)', re.S) urls = [c[2] for c in rex.findall(body)] print urls
Офлайн
52
html-код принято парсить html-парсерами. Например: lxml, beautifulsoup, htmlparser и тд.
Офлайн
0
fata1exДа, знаю но к сожалению это не совсем мой случай. При том, что используемая для парсинга либа умеет работать совместно с beautifulsoup у меня не сложилось. Это была попытка использовать знакомый и понятный вариант, пусть и не красиво.
html-код принято парсить html-парсерами. Например: lxml, beautifulsoup, htmlparser и тд.
Офлайн
52
webstghost, ну правда будет удобнее :) И вам, и тем, кто на код будет смотреть потом.
В любом случае гугл никто не отменял, поэтому по этому запросу ‘find urls on page python’ на первой же странице огромное количество работающих примеров.
В конференции меня нету (
Офлайн
0
Ну, необходимо использовать spynner. Там есть “set_html_parser”, можно указать используемую парсилку. А дальше начинаются пляски с бубном, т.к. примеров взаимодействия этого один с половиной на весь гугл
И везде используется ‘pyquery’ который у меня говорит “AttributeError: ‘module’ object has no attribute ‘Pyquery’”.
Офлайн
857
приведи код страницы
что должно получиться после обработки
Офлайн