лучший способ связать список названий с отдельным списком соответствующих ссылок? (bs4)

#python #html #beautifulsoup #hyperlink

Вопрос:

окончательное редактирование: итак, вот решение —

 list_c = [[x, y] for x, y in zip(titleList, linkList)]
 

Оригинальное сообщение: Я использовал bs4, чтобы очистить веб-сайт рецептов, где название каждого рецепта не сохраняется в теге ссылки. итак, я извлек названия рецептов из одной части кода и извлек ссылки из другой части, и у меня есть эти два списка (рецепты, ссылки), но я не уверен, что лучший способ связать каждое название с соответствующей ссылкой.

(Конечная цель состоит в том, чтобы заголовки были гиперссылками в HTML-файле, который я размещу на своем веб-сайте агрегатора рецептов).

Я подумывал о том, чтобы сохранить их в словаре в виде пар значений ключей или чего-то еще(?), чтобы позже я мог вызвать их в HTML-документе.

предложения?

ИЗМЕНИТЬ: вот код, работает нормально

 soup = BeautifulSoup(htmlText, 'lxml')
links = soup.find_all('article')

linkList = []
titleList = []

for link in links[0:12]:
    hyperL = link.find('header', class_ = 'entry-header').a['href']
    linkList.append(hyperL)
for title in links:
        x = title.get('aria-label')
        titleList.append(x)
 

линкЛист выводит что-то вроде

 ['www.recipe.com/ham', 'www.recipe.com/curry', 'www.recipe.com/etc'] 
 

и

 titleList is ['Ham', 'Curry', 'etc']
 

Я хочу распечатать список из этих 2, как это:

 [['Ham', 'www.recipe.com/ham'],['Curry', 'www.recipe.com/curry']]
 

Конечная цель для моего веб-сайта, я хотел бы иметь следующее для каждой пары:

  <a href='www.recipe.com/ham'>Ham<a/>
 

Комментарии:

1. Можете ли вы поделиться каким-нибудь примером того, какие у вас есть данные и какого рода результатов вы хотите достичь?

Ответ №1:

Если вы предполагаете только поиск заголовков, а затем использование ссылок на результаты, словари отлично подходят для этого.

Комментарии:

1. Правильно, но у меня просто возникли проблемы с тем, как закодировать элемент из одного списка в пару ключ-значение, соответствующую элементу с тем же индексом во 2-м. например, как получить {titleList[0]:Список ссылок[0]}

2. И, очевидно, я мог бы написать {titleList[0]:linkList[0]} для каждого индекса, но у меня будут десятки рецептов и ссылок, и мне трудно разобраться в этом коде. Но я как будто прямо там… вероятно, скоро мы это здесь выясним