BeautifulSoup не может извлечь метаданные - PullRequest
1 голос
/ 22 мая 2011

Я пытаюсь создать функцию, которая будет извлекать мета ключевые слова из заданного URL и возвращать его. Однако независимо от того, какие URL я передаю, он всегда будет неудачным.

def GetKeywords(url):
  soup = BeautifulSoup(url)
  keywords = soup.findAll('meta', attrs={'name':re.compile("^keywords$", re.I)}) #Find all meta keywords on that page
  if len(keywords) == 0: #Check to see if that page has any meta keywords to begin with
    print "No meta keywords for: " + str(url)
    return -1
  else:  #If so then return them
    return keywords

1 Ответ

3 голосов
/ 22 мая 2011

Где BeautifulSoup заявляет, что примет и выборку URL?

soup = BeautifulSoup(url)

Извините, но прочитайте документацию BeautifulSoup сначала самостоятельно, вместо этого пытаясь угадать методы API.

http://www.crummy.com/software/BeautifulSoup/documentation.html#Parsing Документ

Вероятно, вы хотите использовать модуль Pyll для urllib2 для извлечения данных себя перед подачей в BeautifulSoup или на что-то похожее на модуль scrapy.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...