转载自http://www.cnblogs.com/voidsky/p/5490800.html
原文是在win系统下实现的,在此我在ubuntu14.04中实现了一下:
主要定义了一个脚本picdown.py,并采用re与requests模块实现
picdown.py
#-*- coding:utf-8 -*- import re import requests def picdown(): word = raw_input('Please input keyword:') url = 'https://p_w_picpath.baidu.com/search/flip?tn=baidup_w_picpath&ie=utf-8&word='+word+'&ct=201326592&v=flip' html = requests.get(url).text #查找所有以objURL开始的字段,re.S表示让”.”可以匹配换行符, #不然有些标签头和尾是分几行的,就会匹配失败 pic_url = re.findall('"objURL":"(.*?)",',html,re.S) i = 0 for each in pic_url: print each try: pic= requests.get(each, timeout=10)#请求超时 except requests.exceptions.ConnectionError: print '[错误]当前图片无法下载' continue string = './picture/'+str(i) + '.jpg'#保存文件在当前目录下的picture文件夹中 fp = open(string,'wb') fp.write(pic.content) fp.close() i += 1 if __name__=='__main__': picdown()
结果如下:
执行脚本文件,输入刘亦菲;
查看下载的文件