python批量爬取猫咪图片

前端之家收集整理的这篇文章主要介绍了python批量爬取猫咪图片前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

不多说直接上代码

首先需要安装需要的库,安装命令如下

pip install BeautifulSoup

pip install requests

pip install urllib

pip install lxmlfrom bs4 import BeautifulSoup # 贵族名宠网页爬虫

import requests
 urllib.request
 网址
url = 'http://www.hengdadog.com/sale-1.html'
def allpage():   获得所有网页
    all_url = []
    for i in range(1,8): 循环翻页次数
        each_url = url.replace(url[-6],str(i))   替换
        all_url.append(each_url)
    return (all_url)   返回地址列表

if __name__ == __main__':
    img_url = allpage()   调用函数
    for url in img_url:
         获得网页源代码
        print(url)
        requ = requests.get(url)
        req = requ.text.encode(requ.encoding).decode()
        html = BeautifulSoup(req,lxml)
        t = 0
         选择目标url
        img_urls = html.find_all(img)
        for k  img_urls:
            img = k.get(src')   图片
            (img)
            name = str(k.get(alt'))   名字,这里的强制类型转换很重要
            type(name)
             先本地新建一下文件夹,保存图片并且命名
            path = F:\\CAT\\'   路径
            file_name = path + name + .jpg
            imgs = requests.get(img)      存储入文件                                                      
            try:
                urllib.request.urlretrieve(img,file_name)   打开图片地址,下载图片保存在本
except: print("error")

运行效果

 上面代码有不少缺陷,比如需要手动创建目录以及判断目录是否存在,下载没有提示,于是做了些优化:

import BeautifulSoup   贵族名宠网页爬虫
 os
if os.path.exists(F:\\CAT'):判断目录是否存在,存在则跳过,不存在则创建
    pass
else:
    os.mkdir() 
 保存图片并且命名
            path =  路径      
            file_name = path + name +  打开图片地址,下载图片保存在本地,
                正在下载图片到F:\CAT目录······)
            ")

打包成EXE文件

进入文件目录输入如下命令

pyinstaller -F get_cat.py

 

猜你在找的Python相关文章