2015-06-07 5 views
1

Я пытаюсь извлечь некоторые данные с веб-страницы. Я использую Beautiful Soup 4 и regexes.Regex TypeError: объект «NoneType» не может быть вызван

Проблема в том, что она возвращает ошибку, но я не могу понять, почему возникает ошибка.

Вот часть моего кода:

urls = soup.findall('a',href = re.compile(r'/katalog/stavebnictvi/'+'.')) 

Здесь ошибка:

Traceback (most recent call last): 
    File "C:\Users\Milano\My Documents\LiClipse Workspace\Web_Crawlers\idatabaze_cz.py", line 14, in <module> 
    get_categories_urls() 
    File "C:\Users\Milano\My Documents\LiClipse Workspace\Web_Crawlers\idatabaze_cz.py", line 10, in get_categories_urls 
    urls = soup.findall('a',href = re.compile(r'/katalog/stavebnictvi/'+'.')) 
TypeError: 'NoneType' object is not callable 

Существует по крайней мере один тег встреча состояние. Например: <a href="/katalog/stavebnictvi/semily/">

Я думаю, что есть проблема с моим регулярным выражением. Я хочу найти каждый тег a, где href имеет следующую форму: /katalog/stavebnictvi/(any text)

Любой совет?

ответ

2

Проблема с soup.findall, он должен быть soup.findAll или soup.find_all

urls = soup.findAll('a',href = re.compile(r'/katalog/stavebnictvi/'+'.')) 
+1

Спасибо. Странно, что LiClipse не признает, что «findall» не существует. –

Смежные вопросы