抓取图片 url 的网页

Crawling a web page for image urls

以下是python中的一段代码,用于抓取网页并打印出图片的url:

import urllib, re

source = urllib.urlopen('http://www.gardensafari.net/english/squirrels.htm').read()

## every image name is an abbreviation composed by capital letters, so...
m = re.findall('.*?\.(?i)(jpg|jpeg|png|gif|bmp|tif|tiff)', source)

for link in re.findall('.*?\.(?i)(jpg|jpeg|png|gif|bmp|tif|tiff)', source):
    print link

但是,它只打印扩展名:

jpg
jpg
jpg
gif
jpg
gif
jpg
jpg
jpg
jpg...

我做错了什么?任何帮助,将不胜感激。谢谢!

由于输入数据是 HTML,我会改用 HTML 解析器

这是涉及 BeautifulSoup parser 的工作示例:

import urllib
from bs4 import BeautifulSoup

soup = BeautifulSoup(urllib.urlopen('http://www.gardensafari.net/english/squirrels.htm'))

for img in soup.find_all("img", src=True):
    print(img["src"])