Я написал код парсера, но он вытаскиет только 1 картинку на странице, самую первую, а на некоторых страницах есть по 2-3 картинки с одинаковым тегом 'with-overtask', нужно вытаскивать все теги и их значения.Как это сделать?
cod:
<div class="task-img-container">
<div class="with-overtask">
<img src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e75cbc.jpg?d=0&s=OTA8NPuy_8Sq4EBpY-dK1Q" alt="ГДЗ по алгебре 8 класс Мерзляк номер - 930, Решебник" title="">
<div class="overtask"></div></div>
</div>
<div class="block-download-btn">
<a href="/download.html" data-img-src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e75cbc.jpg?d=0&s=OTA8NPuy_8Sq4EBpY-dK1Q" class="download-btn js-download-btn">Скачать решение</a>
</div>
<div id='media-11' class='media media-task-image'></div>
<div class="task-img-container">
<div class="with-overtask">
<img src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e76141.jpg?d=0&s=RrntuLSmcsrB_byl_jkhHA" alt="ГДЗ по алгебре 8 класс Мерзляк номер - 930, Решебник" title="">
<div class="overtask"></div></div>
</div>
<div class="block-download-btn">
<a href="/download.html" data-img-src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e76141.jpg?d=0&s=RrntuLSmcsrB_byl_jkhHA" class="download-btn js-download-btn">Скачать решение</a>
</div>
<div id='media-12' class='media media-task-image'></div>
<div class="task-img-container">
<div class="with-overtask">
<img src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e765c5.jpg?d=0&s=7iumA8y7yT08Dy7mCtpcKw" alt="ГДЗ по алгебре 8 класс Мерзляк номер - 930, Решебник" title="">
<div class="overtask"></div></div>
</div>
<div class="block-download-btn">
<a href="/download.html" data-img-src="//gdz.ru/attachments/images/tasks/000/021/233/0002/5b48368e765c5.jpg?d=0&s=7iumA8y7yT08Dy7mCtpcKw" class="download-btn js-download-btn">Скачать решение</a>
</div>
3
Код моего парсера:.
intmes = int(message.text)
listnum = range(1, 939)
if intmes in listnum:
per = str(intmes)
URL = 'https://gdz.ru/class-8/algebra/merzlyak/' + per + '-nom'
HEADERS = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36',
'accept': '*/*'}
def get_html(url, params=None):
r = requests.get(url, headers=HEADERS, params=params)
return r
imgg = ''
def get_content(html):
global imgg
soup = BeautifulSoup(html, 'html.parser')
div = soup.find('div', {'class': 'with-overtask'})
# if div != None:
imgg = div.find('img')['src']
imgg2 = 'https:' + imgg
p = requests.get(imgg2) # download
out = open(r"C:\Users\vayak\PycharmProjects\pythonProject5\img.jpg", "wb")
out.write(p.content)
out.close()