Я пытаюсь создать функцию, которая будет извлекать мета-ключевые слова из заданного 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
Где состояние BeautifulSoup утверждает, что оно будет принимать и извлекать URL-адрес?
soup = BeautifulSoup(url)
Извините, но сначала прочитайте документацию BeautifulSoup, вместо этого попробуйте и угадайте методы API.
http://www.crummy.com/software/BeautifulSoup/documentation.html#Parsing a Документ
Что вы хотите, скорее всего, используя модуль urllib2 Python для получения данных самостоятельно перед подачей его в BeautifulSoup, или вы посмотрите на что-то вроде модуля scrapy.