Python3 使用request模块爬取网页的图片

from urllib import request
import re
import os

def down_html(url, fname):
    r = request.urlopen(url)
    with open(fname, 'wb') as fobj:
        while True:
            data = r.read()
            if not data:
                break
            fobj.write(data)

def get_url(fname, patt):
    cpatt = re.compile(patt)
    list = []
    with open(fname) as fobj:
        for line in fobj:
            m = re.search(cpatt, line)
            if m:
                list.append(m.group())
    return list

if __name__ == '__main__':
    save_dir = '/tmp/images'
    if not os.path.exists(save_dir):
        os.mkdir(save_dir)
    patt = 'http://[.\w/-]+\.(jpg|jpeg|png|gif)'
    html_url = 'http://www.tedu.cn/'
    html_fname = '/tmp/tedu.html'
    down_html(html_url, html_fname)
    urls = get_url(html_fname, patt)
    for url in urls:
        url_fname = url.split('/')[-1]
        image_fname = os.path.join(save_dir, url_fname)
        down_html(url, image_fname)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值