主要实现一个简单的爬虫,从一个百度贴吧页面下载图片。下载图片的步骤如下: 获取网页HTML文本内容; 分析HTML中图片的HTML标签特征,用正则解析出所有的图片url链接列表; 根据图片的url链接列表将图片下载到本地文 件夹中。
# 内存溢出 (jb51.cc) import requestsimport re# 根据url获取网页HTML内容def getHTMLContent(url): page = requests.get(url) return page.text # 从HTML中解析出所有jpg图片的url# HTML中jpg图片的url格式为:<img ... src="XXX.jpg" wIDth=...>def getJPGs(HTML): # 解析jpg图片url的正则 jpgReg = re.compile(r'<img.+?src="(.+?\.jpg)" wIDth') # 注:这里最后加一个'wIDth'是为了提高匹配精确度 # 解析出jpg的url列表 jpgs = re.findall(jpgReg,HTML) return jpgs # 用图片url下载图片并保存成制定文件名def downloadJPG(imgurl,filename): # 可自动关闭请求和响应的模块 from contextlib import closing with closing(requests.get(imgurl,stream = True)) as resp: with open(filename,'wb') as f: for chunk in resp.iter_content(128): f.write(chunk) # 批量下载图片,默认保存到指定目录文件下def batchDownloadJPGs(imgurls,path = 'C:/Users/administrator/Desktop/picture/'): # 用于给图片命名 count = 1 for url in imgurls: downloadJPG(url,''.join([path,'{0}.jpg'.format(count)])) print("下载中...请稍后...{0}.jpg".format(count)) count = count + 1 # 封装:从网页下载图片def download(url): HTML = getHTMLContent(url) jpgs = getJPGs(HTML) batchDownloadJPGs(jpgs) def main(): url = 'http://tIEba.baIDu.com/p/2256306796' download(url) print("================================") print("已完成下载...请到指定目录进行查看!!!") if __name__ == '__main__': main()# End 5.1.2笔记-jb51.cc
总结 以上是内存溢出为你收集整理的python 爬取网站Jpg图片的简单示例全部内容,希望文章能够帮你解决python 爬取网站Jpg图片的简单示例所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)