Добавлять подсписок в список

Рейтинг: 0Ответов: 0Опубликовано: 16.04.2023

В веб интерфейсе, через форму textarea подаю список ссылок (каждая ссылка с новой строки), затем начинает работать этот код:

def add(data_1):
    snaruzhi = []
    data_1_1 = data_1.split('\n')
    schet4ik = 0
    test_massive = []
    test_massive1 = []
    for i in data_1_1: # проход по списку url
        requests.get(i)
        pages = requests.get(i)
        pages.text
        soup = BeautifulSoup(pages.text, 'lxml')
        schet4ik += 1
        for tag_a in soup.find_all("a"):
            for tag_a_bez_img in tag_a.find_all("img"):
                tag_a_bez_img.decompose()
            for tag_a_bez_h1 in tag_a.find_all("h1"):
                tag_a_bez_h1.decompose()
            for tag_a_bez_h2 in tag_a.find_all("h2"):
                tag_a_bez_h2.decompose()
            for tag_a_bez_h3 in tag_a.find_all("h3"):
                tag_a_bez_h3.decompose()
            for tag_a_bez_h4 in tag_a.find_all("h4"):
                tag_a_bez_h4.decompose()
            for tag_a_bez_h5 in tag_a.find_all("h5"):
                tag_a_bez_h5.decompose()
            for tag_a_bez_h6 in tag_a.find_all("h6"):
                tag_a_bez_h6.decompose()
            snaruzhi.append(tag_a.text.strip())
    print(snaruzhi)
    return snaruzhi

Сейчас это работает таким образом, как закончился первый цикл, то есть прошлись по первому url, имеем список в таком формате:

snaruzhi = ['Ссылка 1' 'Ссылка 2' 'Ссылка 3' 'Ссылка 4' 'Ссылка 5' 'Ссылка 6' ]

Но если продолжить цикл, то список будет расширяться таким образом:

snaruzhi = ['Ссылка 1' 'Ссылка 2' 'Ссылка 3' 'Ссылка 4' 'Ссылка 5' 'Ссылка 6' 'Ссылка 1 url 2' 'Ссылка 2 url 2' 'Ссылка 3 url 2' 'Ссылка 4 url 2' 'Ссылка 5 url 2' 'Ссылка 6 url 2']

Соответственно, непонятно как обратиться и вывести только список url второго сайта, или условно десятого сайта.

Говорят можно использовать вложенные списки:

snaruzhi = [[список всех тегов <a> из первого url], [список всех тегов <a> из второго url]].

Но как в цикле правильно создать и записать вложенный список? Чтобы получилась такая картина:

snaruzhi = [['Ссылка 1' 'Ссылка 2' 'Ссылка 3' 'Ссылка 4' 'Ссылка 5' 'Ссылка 6'], ['Ссылка 1 url 2' 'Ссылка 2 url 2' 'Ссылка 3 url 2' 'Ссылка 4 url 2' 'Ссылка 5 url 2' 'Ссылка 6 url 2']]

Что бы можно было обратиться по индексу:

  • snaruzhi[0] - вывести все названия ссылок с первого url
  • ...
  • snaruzhi[10] - вывести все названия ссылок с десятого url

Ответы

Ответов пока нет.