@ru_python

Страница 2437 из 9768
Маришка
07.03.2017
17:02:31
str = '<img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/><img src="http://www.example.ru/risn/12.jpg"/>' def findall(str): result = [] p = 0 while True: s = str.find(' src="', p) if s >= 0: e = str.find('"', s+6) p = e + 1 result.append(str[s+6:e]) else: break return result print findall(str)

Google
Маришка
07.03.2017
17:02:44
Твое из другого чатика

UnkownUSR
07.03.2017
17:02:56
Енто не моё

Ilia
07.03.2017
17:03:12
Кек

Маришка
07.03.2017
17:03:13
Простите

UnkownUSR
07.03.2017
17:03:17
Вот моё)

<img alt="Лучшие, самые эффективные диеты для похудения" src="http://example.com/_Wra5A7aOaPU/TNSuMIZG8vI/AAAAAAAAIUU/B7vIpoAJa7I/s400/baked-apples.jpg"/> <img src="http://example.com/wp-content/uploads/2014/08/getty_rf_photo_of_mature_co.jpg"/> <img src="http://example.com/images/434/1.jpg"/> <img src="http://example.com/556/412/745/-449996978-1sefbnd-jjpkm1k4eh7pqbk/preview/avatar.jpg"/> <img src="http://example.com/better/images/5086579.png"/> <img src="http://example.com/images/attach/c/8/99/272/99272442_dff88df5941c391bf9e5c846c6bc011d.jpg"/> <img src="http://example.com/misc/i/gallery/22797/773357.jpg"/> <img src="http://example.com/risn/12.gif"/> <img src="http://example.com/wp-content/uploads/2015/08/Ananas_2-e1441005021878-340x252.jpg"/> <img src="http://example.com/images/attach/c/0/120/856/120856192_37208161.jpg"/> <img src="http://example.com/upload/medialibrary/56b/56b5add53569136a46b2ba41fb6f50c0.jpg"/> <img src="http://example.com/images/attach/c/11/115/949/115949621_1.jpg"/>

Маришка
07.03.2017
17:03:19
Да, ошиблась чуть

Маришка
07.03.2017
17:03:52
это фейл))
Что именно, то что я не прочитала изначально от кого это?

UnkownUSR
07.03.2017
17:04:06
кодировочки....
нисмотриии

Игорь
07.03.2017
17:04:27
Что именно, то что я не прочитала изначально от кого это?
не, переназначать str и прочие зарезервированые объекты

Google
UnkownUSR
07.03.2017
17:05:39
Вот что мне делать?

Маришка
07.03.2017
17:05:48
Плакать

UnkownUSR
07.03.2017
17:06:02
Но это ж для второго питона

Мне как к третьему прикрутить?

Aragaer
07.03.2017
17:06:40
ну вот надо понять, что в этом месте не подходит к третьему

Igor
07.03.2017
17:06:47
а в чем проблема? str.find нету в третьем? о_О

Denis
07.03.2017
17:06:57
Все там есть

UnkownUSR
07.03.2017
17:06:59
Igor
07.03.2017
17:07:01
пруф

UnkownUSR
07.03.2017
17:07:03
Почему-то

Aragaer
07.03.2017
17:07:05
Python 3.5.2+ (default, Sep 22 2016, 12:18:14) [GCC 6.2.0 20160927] on linux Type "help", "copyright", "credits" or "license" for more information. >>> s='<img src="http://www.example.ru/risn/12.jpg"/>' >>> s[s.find('src=')+len('src=')+1:s.rfind('"')] 'http://www.example.ru/risn/12.jpg'

UnkownUSR
07.03.2017
17:07:06
Сек

Aragaer
07.03.2017
17:07:08
все норм

еще надежнее с промежуточной строкой на самом деле

l=s[s.find('src=')+len('src=')+1:];l[:l.find('"')] 'http://www.example.ru/risn/12.jpg'

Маришка
07.03.2017
17:08:28
Мне как к третьему прикрутить?
https://docs.python.org/3/library/stdtypes.html#text-sequence-type-str А с чего бы оно у тебя не работает

Aragaer
07.03.2017
17:08:44
чтобы знать, что кавычка относится к src, а не к чему-то другому

Denis
07.03.2017
17:10:22
find_all раззве строки возвращает?

UnkownUSR
07.03.2017
17:11:30
find_all раззве строки возвращает?
Лол, возможно в этом собака зарыта

Google
UnkownUSR
07.03.2017
17:11:42
Вроде РезультТайп возвращает он

Igor
07.03.2017
17:11:53
Охххх.

Denis
07.03.2017
17:11:53
А ты возьми и выведи

Кажется, скорость тут далеко не главная проблема

UnkownUSR
07.03.2017
17:13:04
)

Igor
07.03.2017
17:13:16
In [5]: soup = BeautifulSoup('''<img src="http://www.example.ru/risn/12.jpg"/> <img src="http://www.example.ru/risn/13.jpg"/> <img src="http://www.example.ru/risn/14.jpg"/> ''', 'lxml') In [6]: [tag.attrs.get('src') for tag in soup.find_all('img')] Out[6]: ['http://www.example.ru/risn/12.jpg', 'http://www.example.ru/risn/13.jpg', 'http://www.example.ru/risn/14.jpg']

UnkownUSR
07.03.2017
17:13:20
Это набросок :3

Правда

Igor
07.03.2017
17:14:45
зачем делать find('src') какой-то там, когда bs уже все распарсил.

UnkownUSR
07.03.2017
17:15:27
Я нивиноват

Igor
07.03.2017
17:15:47
тебе посоветовали делать это относительно строки.

Igor
07.03.2017
17:16:05
без учета того, что ты парсишь уже все bs'ом

Маришка
07.03.2017
17:16:19
Я нивиноват
Писать парсер по полученным данным с парсера

Igor
07.03.2017
17:16:42
где

Маришка
07.03.2017
17:16:44
Genius

Denis
07.03.2017
17:16:44
Как насчет почитать доки BS?

Google
Игорь
07.03.2017
17:17:33


Igor
07.03.2017
17:19:44
Я ж говорил
два раза перечитал, не нашел где

что добавить?

может это, в @python_beginners? )

Admin
ERROR: S client not available

UnkownUSR
07.03.2017
17:20:22
bs4

requests, bs4

wf
07.03.2017
17:20:41
и здесь про парсинг, еще не решили?

UnkownUSR
07.03.2017
17:20:51
что добавить?
Вот этот участок в квадратных скобках

Через .append

wf
07.03.2017
17:21:44
requests, bs4
вам же скорость нужна макс?

UnkownUSR
07.03.2017
17:21:50
wf
07.03.2017
17:22:08
так почему нативным find не воспользоваться?

Игорь
07.03.2017
17:23:37
мне кажется это надолго

Google
wf
07.03.2017
17:24:03
";".join(["1","2","3","4"])

ResultType != Str
я правильно понял, нужна строка а не список?

Игорь
07.03.2017
17:25:50
вы сейчас насоветуете вслепую))

Aragaer
07.03.2017
17:26:09
эм

нативный find возвращает инт

или None, если не нашел

bs, кмк, слишком универсальный вариант

wf
07.03.2017
17:27:07
нативный find возвращает инт
ну дальше про slice посчитал нет смысла говорить

UnkownUSR
07.03.2017
17:27:19
я правильно понял, нужна строка а не список?
find_all возвращает результтайп, а не список строк

Igor
07.03.2017
17:27:23
find_all возвращает ResultSet. внутри ResultSet'а в его случае Tag'и.

UnkownUSR
07.03.2017
17:27:24
Я же юзаю bs4

wf
07.03.2017
17:27:52
Я же юзаю bs4
если не ошибусь он не быстрее регекспа будет

Igor
07.03.2017
17:27:54
а про bs4 мы все впервые узнали только после твоего скриншота и после того, как ты вынес нескольким людям мозги )

Aragaer
07.03.2017
17:28:48
я думаю, bs4 внутри себя будет использовать lxml и там нативное. Можно сразу lxml задействовать

Igor
07.03.2017
17:29:07
да, он старается lxml юзать, если тот установлен

Aragaer
07.03.2017
17:29:16
но я уже сказал, потери на передаче туда-сюда могут быть более значительными, чем выигрыш от использования нативных либ

Aragaer
07.03.2017
17:30:09
это как в андроиде - "вы можете использовать нативные либы для арифметике, но скорее всего на jni потеряете больше, чем от реализации арифметики в жаве"

Страница 2437 из 9768