Python - получение всех изображений из HTML-файла - PullRequest
8 голосов
/ 28 ноября 2010

Может ли кто-нибудь помочь мне разобрать html-файл, чтобы получить ссылки для всех изображений в файле на python?

Желательно без стороннего модуля ...

Спасибо!

Ответы [ 3 ]

10 голосов
/ 28 ноября 2010

только с использованием PSL

from html.parser import HTMLParser
class MyParse(HTMLParser):
    def handle_starttag(self, tag, attrs):
        if tag=="img":
            print(dict(attrs)["src"])

h=MyParse()
page=open("index.html").read()
h.feed(page)
10 голосов
/ 28 ноября 2010

Можно использовать Красивый суп . Я знаю, что вы сказали без стороннего модуля. Тем не менее, это идеальный инструмент для анализа HTML.

import urllib2
from BeautifulSoup import BeautifulSoup
page = BeautifulSoup(urllib2.urlopen("http://www.url.com"))
page.findAll('img')
2 голосов
/ 28 ноября 2010

Принято считать, что lxml быстрее, чем Beautiful Soup (ref) .Его учебное пособие можно найти здесь: (ссылка) Вы также можете взглянуть на эту старую публикацию stackoverflow .

...