当前位置: 移动技术网 > IT编程>脚本编程>Python > python爬虫(爬取图片)

python爬虫(爬取图片)

2019年05月14日  | 移动技术网IT编程  | 我要评论

幻想塔防,女体食物工厂,南湖的船党的摇篮

python爬虫爬图片

爬虫爬校花网校花的图片

第一步

载入爬虫模块

#载入爬虫模块
import  re                  #载入爬虫模块
import  requests               #载入爬虫模块

第二步

获得校花网的地址,获得其网页f12内的所有东西

#获得校花网的地址,获得其网页f12内的所有东西
import  re                  #载入爬虫模块
import  requests               #载入爬虫模块

response = requests.get(f'http://www.xiaohuar.com/list-1-0.html')
data = response.text                #data就是我们要的校花f12里的东西啦,并用字符串格式保存

第三步

获得校花网的地址,图片的链接

#获得校花网的地址,图片的链接
import  re                  #载入爬虫模块
import  requests               #载入爬虫模块

response = requests.get(f'http://www.xiaohuar.com/list-1-0.html')
data = response.text                #data就是我们要的校花f12里的东西啦,并用字符串格式保存

one_list = re.findall('" src="(.*?)" /></a>',data) #其中(.*?)表示我们所要获得的内容
for v in range(len(one_list)): #type:str 这是为了让pycharm更快的知道v是字符串格式方便导入内置方法
    if one_list[v].startswith('/d'):         #这是为了让其中有些保护的图片变成正确的超链接格式
        one_list[v] = f'http://www.xiaohuar.com/{one_list[v]}'

第四步

创建文件保存下来

#获得校花网的地址,图片的链接
import  re                  #载入爬虫模块
import  requests               #载入爬虫模块

response = requests.get(f'http://www.xiaohuar.com/list-1-0.html')
data = response.text                #data就是我们要的校花f12里的东西啦,并用字符串格式保存

one_list = re.findall('" src="(.*?)" /></a>',data) #其中(.*?)表示我们所要获得的内容
for v in range(len(one_list)): #type:str 这是为了让pycharm更快的知道v是字符串格式方便导入内置方法
    if one_list[v].startswith('/d'):         #这是为了让其中有些保护的图片变成正确的超链接格式
        one_list[v] = f'http://www.xiaohuar.com/{one_list[v]}'
        
for x in one_list: #type:str
    name = x.split('/')[-1]   #为了自动生成文件名
    dd = requests.get(x)      #获得图片的信息
    dd = dd.content           #图片信息装换成机械语言
    with open(f'd:\图片\{name}','wb') as fw:  #创建文件的路径 , 写入保存
        fw.write(dd)
        fw.flush()     

第五步

获得校花网下一页中的所有能让并且每获取一张打印一次

import  re                  #模块
import  requests               #模块
num = 0                         #为了记录爬的照片的次数
for url_name in range(44):
    response = requests.get(f'http://www.xiaohuar.com/list-1-{url_name}.html')
    data = response.text
    # print(data)
    one_list = re.findall('" src="(.*?)" /></a>',data)
    for v in range(len(one_list)): #type:str
        if one_list[v].startswith('/d'):
            one_list[v] = f'http://www.xiaohuar.com/{one_list[v]}'
    for x in one_list: #type:str
        name = x.split('/')[-1]
        dd = requests.get(x)
        dd = dd.content
        with open(f'd:\图片\{name}','wb') as fw:
            fw.write(dd)
            fw.flush()
            num += 1
            print(f'爬取{num}张')

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网