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

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

09.09.2019, 18:40. Показов 8757. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru