Задать вопрос
@bybacapitan

Как правильно запустить цикл?

Написал код, который взаимодействует с сайтом для скачивания медиа из инстаграма.
Если в посте 1 фото, или видео то все работает нормально.
Но если в посте больше одной фотки то парсится только первая из них.
Выбрал этот сайт , у него такая структура 62c68531c0465050234870.png
Вот мой код:
import time 
import requests

from bs4 import BeautifulSoup as BS
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By

post = input('enter link to post: ')

browser = webdriver.Firefox()
browser.maximize_window()
browser.get('https://sssinstagram.com/')
time.sleep(3)
_login = browser.find_element(By.NAME, 'id')
_login.send_keys(post)
_login.send_keys(Keys.ENTER)
time.sleep(10)
src = browser.page_source
browser.quit()

soup = BS(src, 'html.parser')
for link in soup:
    link = link.find('div', {'class': 'graph-image'}).find('a').get('href')
    print(link)

В одном классе лежит две href, я получаю первую из них с лучшим качеством, пытаюсь запустить цикл но выдает ссылку только на первое фото.
  • Вопрос задан
  • 133 просмотра
Подписаться 2 Простой 3 комментария
Решения вопроса 1
igorzakhar
@igorzakhar
Накатал на коленке такой html:
<div class='graph-image'><a href="#1">Hello world 1!</a></div>
<div class='graph-image'><a href="#2">Hello world 2!</a></div>
<div class='graph-image'><a href="#3">Hello world 3!</a></div>
<div class='graph-image'><a href="#4">Hello world 4!</a></div>
<div class='graph-image'><a href="#5">Hello world 5!</a></div>


62c6938c2aa41656164827.png
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы