欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python爬虫(爬取图片)

程序员文章站 2022-07-10 11:53:50
python爬虫爬图片 爬虫爬校花网校花的图片 第一步 载入爬虫模块 第二步 获得校花网的地址,获得其网页F12内的所有东西 第三步 获得校花网的地址,图片的链接 第四步 创建文件保存下来 第五步 获得校花网下一页中的所有能让并且每获取一张打印一次 ......

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}张')