Форум программистов, компьютерный форум, киберфорум
Python: Web
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/47: Рейтинг темы: голосов - 47, средняя оценка - 4.87
9 / 0 / 0
Регистрация: 16.02.2019
Сообщений: 67

Парсинг html страницы картинок

09.09.2019, 18:40. Показов 8791. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Есть код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import requests
from bs4 import BeautifulSoup as bs
import random
import lxml.html
 
r = requests.get("https://www.google.ru/search?tbm=isch&q=яблоко")
 
text = r.text
 
soup = bs(text, "html.parser")
 
theresult = {}
 
i = 0
 
for qwerty in soup.find_all('img'):
 theresult[i] = qwerty.get('src')
 print(theresult[i])
 i = i + 1
 print(i)
i = random.randint(1, 19)
print(theresult[i])
Он парсит страницу картинок и выдаёт рандомную ссылку и все что он собрал. Но проблема в том что эти картинки размера примерно 150 на 150 пикселей - то есть ровно такие же как в самой странице гугла при просмотре. Я хотел спарсить не на
soup.find_all('img') а на soup.find_all('a') что-бы получить ссылку как во втором коде а не на первом(картинка).
Но вместо этого у меня вот это как ни крути:

Не по теме:

<!DOCTYPE doctype html>
<html itemscope="" itemtype="http://schema.org/SearchResultsPage" lang="uk"><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"/><noscript><meta content="0;url=/search?q=%D1%8F%D0%B1%D0%BB%D0%BE%D0%BA% D0%BE&amp;tbm=isch&amp;newwindow=1&amp;i e=UTF-8&amp;gbv=1&amp;sei=cHB2XcbhCaevmwW8zbeA Dg" http-equiv="refresh"/><style>table,div,span,p{display:none} </style><div style="display:block">Натисніть <a href="/search?q=%D1%8F%D0%B1%D0%BB%D0%BE%D0%BA% D0%BE&amp;tbm=isch&amp;newwindow=1&amp;i e=UTF-8&amp;gbv=1&amp;sei=cHB2XcbhCaevmwW8zbeA Dg">тут</a>, якщо вас не буде перенаправлено за кілька секунд.</div></noscript><title>яблоко - Пошук Google</title><style>#gbar,#guser{font-size:13px;padding-top:1px !important;}#gbar{height:22px}#guser{pad ding-bottom:7px !important;text-align:right}.gbh,.gbd{border-top:1px solid #c9d7f1;font-size:1px}.gbh{height:0;position:absolute ;top:24px;width:100%}@media all{.gb1{height:22px;margin-right:.5em;vertical-align:top}#gbar{float:left}}a.gb1,a.gb4{ text-decoration:underline !important}a.gb1,a.gb4{color:#00c !important}.gbi .gb4{color:#dd8e27 !important}.gbf .gb4{color:#900 !important}
</style><style>.star{float:left;margin-top:1px;overflow:hidden}.ybhkme{font-size:11px}.j{width:34em}body,td,div,a{fo nt-family:arial,sans-serif;tap-highlight-color:rgba(255,255,255,0)}body{margin:0} a img{border:0}#gbar{float:left;height:22p x;padding-left:2px;font-size:13px}.gsfi,.gsfs{font-size:17px}.w,.q:active,.q:visited,.tbotu {color:#11c}a.gl{text-decoration:none}#foot{padding:0 8px}#foot a{white-space:nowrap}h3{font-size:16px;font-weight:normal;margin:0;padding:0}#res h3{display:inline}.hd{height:1px;positio n:absolute;top:-1000em}.g,body,html,table,.std{font-size:13px}.g{margin-bottom:23px;margin-top:0;zoom:1}ol li,ul li{list-style:none}h1,ol,ul,li{margin:0;padding: 0}.e{margin:2px 0 0.75em}#leftnav a{text-decoration:none}#leftnav h2{color:#767676;font-weight:normal;margin:0}#nav{border-collapse:collapse;margin-top:17px;text-align:left}#nav td{text-align:center}.nobr{white-space:nowrap}.ts{border-collapse:collapse}.s br{display:none}.csb{display:block;heigh t:40px}.images_table td{line-height:17px;padding-bottom:16px}.images_table img{border:1px solid #ccc;padding:1px}#tbd,#abd{display:block ;min-height:1px}#abd{padding-top:3px}#tbd li{display:inline}.TIrJXe,.UU5df{margin-bottom:8px}#tbd .tbt li{display:block;font-size:13px;line-height:1.2;padding-bottom:3px;padding-left:8px;text-indent:-8px}.tbos,.b{font-weight:bold}em{font-weight:bold;font-style:normal}.mime{color:#1a0dab;font-weight:bold;font-size:x-small}.soc a{text-decoration:none}.soc{color:#808080}.ul7G bc{color:#e7711b}#Db7kif{border:1px solid #e0e0e0;margin-left:-8px;margin-right:-8px;padding:15px 20px 5px}.mrH1y{font-size:32px}.PZ6wOb{color:#777;font-size:16px;margin-top:5px}.gwrItc{color:#777;font-size:14px;margin-top:5px}.SVob4e{border:1px solid #e0e0e0;padding-left:20px}.mYu5Hb{border:1px solid #e0e0e0;padding:5px 20px}#vob{border:1px solid #e0e0e0;padding:15px 15px}#ZjIC2e{font-size:22px;line-height:22px;padding-bottom:5px}#vob_st{line-height:1.24}.DfLGHd{border-width:1px;border-style:solid;border-color:#eee;background-color:#fff;position:relative;margin-bottom:26px}.uRIxYb,.NjTIc,.PftIHd,.DXoZ mb{font-family:Arial;font-weight:lighter}.uRIxYb{margin-bottom:5px}.uRIxYb{font-size:xx-large}.NjTIc{font-size:medium}.PftIHd{font-size:large}.DXoZmb{font-size:small}.DfLGHd{margin-left:-8px;margin-right:-15px;padding:20px 20px 24px}.ernfsc{border-spacing:0px 2px}.D3VFNd{max-width:380px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;padding-left:0px}.c1Ujmc{padding-left:15px;white-space:nowrap;color:#666}.EjZtie{padding-left:0px}.SFt5jb{color:#212121}.Pt7r9e{c olor:#878787}.bkcGhd{color:#093}.fIP9ce{ color:#c00}.LDBB9d{padding:1px}.gssb_a{p adding:0 10px !important}.gssb_c{left:132px !important;right:295px !important;top:78px !important;width:572px.................. ..



Ну тут как-бы тут есть ссылки но тут вообще нет ссылок на картинки
Вот и вопрос - как спарсить именно тот код который отсылает на вот эту картинку(2 картинка)?
Миниатюры
Парсинг html страницы картинок   Парсинг html страницы картинок  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.09.2019, 18:40
Ответы с готовыми решениями:

Парсинг html страницы
хочу сделать автоматическое скачивание файлов по ключевому слову на картинке есть кнопка которая выдаёт ссылку на скачку(первая...

Парсинг залогиненной html страницы
есть код import requests from json import loads from bs4 import BeautifulSoup import re from selenium import webdriver ...

Парсинг картинок с nastol.com.ua
Есть скрипт который успешно парсит обои из нужных категорий, но для одной категории нужна авторизация - авторизавался, а он все равно не...

1
 Аватар для __ALPHA__
302 / 160 / 87
Регистрация: 16.04.2018
Сообщений: 239
19.09.2019, 22:53
Лучший ответ Сообщение было отмечено Dobrodeetel как решение

Решение

Выводит 100 первых ссылок на большие картинки
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import requests
from json import loads
from bs4 import BeautifulSoup
 
s = requests.session()
s.headers.update({'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0'})
 
r = s.get('https://www.google.ru/search?q=яблоко&tbm=isch')
 
soup = BeautifulSoup(r.text, "html.parser")
 
for text in soup.findAll(attrs={'class': 'rg_meta notranslate'}):
    text = loads(text.text)
    print(text["ou"])
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.09.2019, 22:53
Помогаю со студенческими работами здесь

Парсинг подгружаемых картинок с aliexpress
Вообщем я пытаюсь достать ссылки картинок с алиэкспрес при помощи selenium, проблема возникла тогда когда понадобилась ссылка не на первую...

Парсинг страницы
Здравствуйте! Столкнулся с такой проблемой, что не могу спарсить страницу. Я использовал BeautifulSoup для парсинга, но суть проблемы в...

Парсинг страницы
from urllib.request import urlopen from bs4 import BeautifulSoup import re def get_links(url): html = urlopen(url) ...

Парсинг HTML
Ну в общем, довольно заезженная тема, проведя на просторах интернета несколько часов, я это понял. Но вопросы все же остались. Суть...

Парсинг html
Здравстувуйте. Начинаю изучать python. В качестве тренировочной задачи делаю такую Есть html страница. В ней есть столбец имя...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru