#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]} для каждого индекса, но у меня будут десятки рецептов и ссылок, и мне трудно разобраться в этом коде. Но я как будто прямо там… вероятно, скоро мы это здесь выясним