`

新手扒图

 
阅读更多
新手写的比较拙劣  但达到效果了。

py是个好东西



# coding=utf-8

import requests
import sys
from bs4 import BeautifulSoup
from multiprocessing import Pool
# 引入模块
import os


def mkdir(path):
    # 去除首位空格
    path = path.strip()
    # 去除尾部 \ 符号
    path = path.rstrip("\\")

    # 判断路径是否存在
    # 存在     True
    # 不存在   False
    isExists = os.path.exists(path)

    # 判断结果
    if not isExists:
        # 如果不存在则创建目录
        # 创建目录操作函数
        os.makedirs(path)

        print
        path + ' 创建成功'
        return True
    else:
        # 如果目录存在则不创建,并提示目录已存在
        print
        path + ' 目录已存在'
        return False


# 详情页通用前缀
skuDetailPath = 'http://www.xxxx.com/products/'

# 首页地址
url = 'http://www.xxxx.com/products/MAGENTO_0'

# 假装头
header = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 UBrowser/6.1.2107.204 Safari/537.36'}

html = requests.get(url, headers=header)

# 使用自带的html.parser解析,速度慢但很通用
soup = BeautifulSoup(html.text, 'html.parser')

# 实际上是第一个class = 'con'的div里的所有a 标签是我要搞他的东西
all_a = soup.find('div', class_='con').find_all('a')

# 线程池中线程数 多线程不会写 放弃
# pool = Pool(5)

beforeSku = 'NA'

for a in all_a:
    # 拿Sku作为文件名
    sku = a.get("href")
    sku = sku[10:len(sku)]
    print(sku)
    # 扒它图床地址
    pic_url = a.find('img')
    print(pic_url)
    html = requests.get(pic_url.get("load_src"), headers=header)

    # 创建文件夹
    # 定义要创建的目录
    if (sku == beforeSku):
        mkpath = "D:\pyproject\\" + sku + "\\"
    else:
        mkpath = "D:\pyproject\\" + sku + "\\"
        # 调用函数
        mkdir(mkpath)

    os.chdir(mkpath)

    # 从详情页面开始扒
    html = requests.get(skuDetailPath + sku, headers=header)
    # 使用自带的html.parser解析,速度慢但很通用
    soup = BeautifulSoup(html.text, 'html.parser')

    all_detail_img = soup.find('div', class_='detail_page_con_center_img').find_all('img')

    for index, detail_img in enumerate(all_detail_img):
        detail_path = detail_img.get("detail_src")
        detail_html = requests.get(detail_path, headers=header)
        # 开始下载
        f = open(sku + '_'+str(index)+ '.jpg', 'wb')
        f.write(detail_html.content)
        f.close()

    beforeSku = sku
    # pool.close()
    # pool.join()





10秒下载完后的效果图:



  • 大小: 157 KB
分享到:
评论

相关推荐

    globalfetch网站扒图器

    今天我们要介绍的是一款名为“globalfetch”的免费网站扒图软件,它以其高效、便捷的特性,在众多同类工具中脱颖而出。 globalfetch软件的主要功能在于帮助用户自动化地从网站中批量下载图片,极大地提高了工作效率...

    扒前端网页代码工具,Teleport Ultra

    在网上经常看到一些很好看的页面,这些页面其实都可以把代码扒取下来的,可以用浏览器的另存为,也有一些相应的软件。...适合新手爬取前端代码参考使用,一键式获取js,css等文件源码 另外使用指南在专栏中有文章

    单页扒站小工具.zip

    单页扒站小工具是一种非常实用的网页抓取软件,主要针对那些想要快速备份或学习网页设计的新手和追求效率的用户。它简化了复杂的网页下载过程,使得只需输入目标网址,就能轻松地将整个网页内容下载到本地,以文件夹...

    capo for mac 苹果电脑扒谱软件

    **Capo for Mac:苹果电脑上的专业扒谱软件** ...总的来说,Capo for Mac 是一款强大的音乐学习辅助软件,无论你是吉他新手还是经验丰富的音乐人,都能从中受益匪浅,提升你的扒谱技能和音乐理解力。

    前端工具jcrop图片剪裁 扒下来就能用

    在前端开发中,图片剪裁是一项常见的需求,用于让用户自定义选择图片的显示区域。`jCrop` 是一个基于 jQuery 的轻量级图片裁剪插件...无论你是新手还是经验丰富的开发者,`jCrop` 都是实现前端图片剪裁功能的理想选择。

    扒一扒职场十大负能量Word范文

    在职场中,我们时常会遇到各种负能量的情况,这些情况可能会对我们的工作效率和心态产生负面影响。本资源“扒一扒职场十大负能量...因此,无论是初入职场的新手还是经验丰富的专业人士,这套资料都具有极高的参考价值。

    vivi万能小偷3.8商业破解版(无限制).rar

    仿站一秒,扒站神器,适合新手学习观摩!

    菜鸟也仿网站

    3. **扒别人模板.txt**:这可能是一个文本文件,提供了如何获取和分析其他网站模板的步骤,教给新手如何从现有网站中提取设计元素和代码,用作学习参考。 4. **images**:这个文件夹很可能包含了用于网站的图像资源...

    编剧软件FinalDraft_41143.zip

    有了这款软件,新手编剧也可以很轻松地制作好剧本了,因为你不再需要了解剧本的格式是怎样的,不需要了解剧本的规范,也不用担心你写的剧本太过于杂乱,这些在Final Draft面前通通不是问题,可以帮助你自动转换为...

    使用工具快速建站

    在IT行业中,快速建站是许多企业和个人开发者的需求。...通过学习和实践上述知识点,无论是新手还是经验丰富的开发者,都能更好地利用工具快速建站,并进行有效的源码修改,以实现个性化和高效化的网站开发。

    京东店铺装修助手安装包.rar

    5. **新手友好**:作为一款运营新人必备的工具,京东店铺装修助手应该具有简单易懂的操作界面和流程,即使是对设计和编程不太熟悉的商家也能轻松上手。 6. **更新与维护**:考虑到电商平台规则和技术的不断变化,好...

    三国杀资源提取器易语言源码

    易语言的语法简洁明了,适合编程新手入门。通过研究这段源码,初学者不仅可以掌握易语言的基本语法,还能了解到游戏资源管理的相关知识。 在实际应用中,这样的资源提取器可能被用于制作游戏辅助工具,比如自定义...

    SiteSucker-Mac版

    10. **用户体验**:简洁的用户界面使得SiteSucker易于上手,无论是新手还是经验丰富的用户都能快速掌握其操作方法。 总的来说,SiteSucker作为一个macOS平台上的免安装网站下载工具,它的主要价值在于其高效、灵活...

    C# 指定字符的判断鉴定程序(VS2008)

    VS2008环境的C#指定字符的判断鉴定程序,实际上就是一字符判断,是从一个新手教程里扒下来的,搞的挺神秘,但是超简单,如果你输入的字符等于预留的字符,会弹出一句话,以示鉴定完毕,如果输入的不对,则要求继续...

    news0149.rar

    javaweb新闻发布系统 ,用户的基本增删改查功能.适用于新手入门基础javaweb新闻发布系统 ,用户的基本增删改查功能.适用于新手入门基础javaweb新闻发布系统 ,用户的基本增删改查功能.适用于新手入门基础

    基金训练营新版(完结).zip

    2. **基金家族的开扒** - 这部分可能详细介绍了各类基金类型,如股票基金、债券基金、混合基金、指数基金等,以及它们的风险与收益特性,帮助投资者了解不同基金的性质和适合的投资场景。 3. **指数基金哪家好** - ...

    2021-2022年收藏的精品资料汽车驾驶证路考注意事项.doc

    打方向时要注意避免“九不准”,比如双手扒在方向盘上、端着方向盘、小把碎轮等,这些都会导致操作不准确,甚至扣分。 2. **离合器踏板**:使用左脚掌踩踏,避免用脚尖、脚心、脚跟。换挡时要遵循“两快一停一慢”...

    微商培训要点.pdf

    - 作为新手,初期不宜过于频繁地发图和广告,以免引起反感。可以分享生活点滴、产品使用体验,增加互动性。 4. **持续互动与关系建立**: - 与粉丝保持良好互动,定期回应评论和消息,建立人际关系,让朋友圈成为...

    PHP Web应用开发入门体验手记.doc

    前端开发可以使用Firefox等工具扒取网页内容,或者使用DW+Ps、WebStorm、HBuilder等进行HTML5、CSS3、JavaScript的原创开发。后端开发则依赖于PHP的OOP开发环境,如Zend Studio或PhpStorm,配合Laravel等框架进行...

Global site tag (gtag.js) - Google Analytics