# -*- encoding: utf-8 -*-
import requests
import os
import urllib
def Search(name,localpath,page):
#os.makedirs(localpath) #这里创建文件夹路径,exist_ok=True 指如果有就不创建
params = {
'tn':'resultjson_com',
'catename':'pcindexhot',
'ipn':'rj',
'ct':'201326592',
'is':'',
'fp':'result',
'queryWord':'',
'cl':'2',
'lm':'-1',
'ie':'utf-8',
'oe':'utf-8',
'adpicid':'',
'st':'-1',
'z':'',
'ic':'0',
'word':name,
'face':'0',
'istype':'2',
'qc':'',
'nc':'1',
'fr':'',
'pn':'0',
'rn':'30'
};
params['pn'] = '%d' % page
Request(params,localpath)
return ;
def Request(param,path):
searchurl = 'http://image.baidu.com/search/avatarjson' #百度图片
response = requests.get(searchurl,params =param ) #传入请求参数
json = response.json()['imgs'] #每张图片有自己的下载路径
for i in range(0,len(json)):
filename = os.path.split(json[i]['objURL'])[1]
Download(json[i]['objURL'],filename,path)
def Download(url,filename,filepath):
path = os.path.join(filepath,filename) #这里我们还是采用原来的图片
try: #有些图片不知道为什么下载不了,所以这里用了try的方式
urllib.urlretrieve(url,path)
print('Downloading Images From ', url)
except:
print('Downloading None Images!')
#下载的主函数
if __name__ =='__main__':
name=raw_input("输入要下载的关键词:")
page_start=raw_input("输入开始下载页码:")
page_end=int(raw_input("输入要连续下载页码数量:"))+int(page_start)
for i in range(int(page_start),page_end):
Search(name,'images/',i)
该代码,根据别人代码改写,加入自定义页码和自定义关键字。
原文章地址:没找到(那个作者也许会很伤心),记得是个怕老虎相关的图片的爬虫。