爬虫:download-pic-local_第1张图片

urllib模块中的方法(补充中)


1.urllib.urlopen(url[,data[,proxies]])


打开一个url的方法,返回一个文件对象,然后可以进行类似文件对象的操作



urlopen返回对象提供方法:


-         read() , readline() ,readlines() , fileno() , close() :这些方法的使用方式与文件对象完全一样


-         info():返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息


-         getcode():返回Http状态码。如果是http请求,200请求成功完成;404网址未找到


-         geturl():返回请求的url


代码部分:

import re
import os
import urllib
import urllib.request

def get_Html(url):
    page = urllib.request.urlopen(url)
    html = page.read()
    return html.decode('UTF-8')
def get_Img(html):
    res = r'src="(.+?\.jpg)" pic_ext'
    imgre = re.compile(res)
    list = imgre.findall(html)#匹配出图片的地址(url),放在list中
    i = 0
    path = 'E:\\1' 
    # 将图片保存到E:\\1文件夹中,如果没有test文件夹则创建
    if not os.path.isdir(path): 
        os.makedirs(path) 
    paths = path+'\\'      #保存在1路径下 

    for imgurl in list: 
        urllib.request.urlretrieve(imgurl,'{}{}.jpg'.format(paths,i))  #urlretrieve为:打开imglist中保存的图片网址,并下载图片保存在本地:路径+图片.jpg,format格式化字符串
        i = i + 1 
    return list
html = get_Html("http://tieba.baidu.com/p/2460150866")#获取该网址网页详细信息,得到网页的源代码 


print (get_Img(html)) #从网页源代码中正则匹配出url路径并下载保存图片