LINUX.ORG.RU

Python поиск текста в HTML

 


0

1

Всем привет, нужна ваша помощь: Есть веб страница, содержимое получаю таким образом

import urllib
import re
sock = urllib.urlopen("https://www.facebook.com/ScratchThatGame")
wsource = sock.read()
sock.close()

Теперь в этом коде нужна найти все совпадения с - <img class=«scaledImageFitWidth img» src="???"

Ответ на: комментарий от ei-grad

Когда выполняю выводит пустую строку

import urllib
sock = urllib.urlopen("https://www.facebook.com/ScratchThatGame")
wsource = sock.read()
sock.close()
s1 = '<img class="scaledImageFitWidth img" src="'
start = wsource.find(s1)
end = wsource.find('"', start)
print wsource[start+len(s1):end]

maison999
() автор топика
Ответ на: комментарий от maison999

Ну видимо в документе нет указанной строки, попробуй выполнить это всё в интерактивной сессии и увидишь где именно оно не срабатывает. Упс. end не правильно считается. Догадаешься сам как поправить?

ei-grad ★★★★★
()
Последнее исправление: ei-grad (всего исправлений: 1)
Ответ на: комментарий от ei-grad

убейся об стенку, пожалуйста

anonymous
()

https://github.com/html5lib/html5lib-python — очень советую делать через этот модуль (или подобный модуль, по смыслу).

а вот [так] — делать не надо (на мой скромный взгляд — это слегка не качественное решение :)).

user_id_68054 ★★★★★
()
Последнее исправление: user_id_68054 (всего исправлений: 4)
Ответ на: комментарий от ei-grad

напрямую

это как? хотя трепанация при помощи пневмонасоса, конечно, эффективнее.

anonymous
()
Ответ на: комментарий от ei-grad

Парсинг HTML/XML «поиском» и регэкспами приравнивается к пропаганде нетрадиционных отношений.

anonymous
()
Ответ на: комментарий от ei-grad

Не учи плохому. Топикстартеру: не применяй re к html никогда.

<img
class="scaledImageFitWidth img"
src="whatever">

Удачи.

anonymous
()
import urllib
from lxml.html import fromstring as parse

sock = urllib.urlopen("https://www.facebook.com/ScratchThatGame")
wsource = sock.read()
sock.close()

page = parse(wsource)
img = page.cssselect('img.scaledImageFitWidth')[0]
print(img.attrib['src'])
Kesha_Molchanov
()
Ответ на: комментарий от anonymous

А ты знаешь, я тут посмотрел порно с тайским... ээ... гм... в общем, да, чувак топикстартер, юзай ка lxml лучше...

ei-grad ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.