简单的Python抓taobao图片爬虫

 更新时间:2014年10月26日 14:54:50   投稿:hebedich  
这篇文章主要介绍了简单的Python抓taobao图片爬虫,需要的朋友可以参考下

写了一个抓taobao图片的爬虫,全是用if,for,while写的,比较简陋,入门作品。

从网页http://mm.taobao.com/json/request_top_list.htm?type=0&page=中提取taobao模特的照片。

复制代码 代码如下:

# -*- coding: cp936 -*-
import urllib2
import urllib
mmurl="http://mm.taobao.com/json/request_top_list.htm?type=0&page="
i=0#第二页有个人的页面没图片,会出现IO错误
while i<15:
        url=mmurl+str(i)
        #print url #打印出列表的url
        up=urllib2.urlopen(url)#打开页面,存入句柄中
        cont=up.read()
        #print len(cont)#页面的长度
        ahref='<a href="http'#筛选页面内网页链接的关键字
        target="target"
        pa=cont.find(ahref)#找出网页链接的头部位置
        pt=cont.find(target,pa)#找出网页链接的尾部位置
        for a in range(0,20):#如才能不把20硬编码进去?如何找到文件结尾?
                urlx=cont[pa+len(ahref)-4:pt-2]#从头部到尾部,将网页链接存入变量
                if len(urlx) < 60:#如果网页链接长度适合【len()!!!!】
                    urla=urlx     #那么就准备将其打印出来
                    print urla    #这是想要的model个人URL
                    #########以下开始对model个人的URL进行操作#########
                    mup=urllib2.urlopen(urla)#打开model个人的页面,存入句柄中
                    mcont=mup.read()#对model页面的句柄进行读出操作,存入mcont字符串
                    imgh="<img style=" #筛选页面内【图片】链接的关键字
                    imgt=".jpg"
                    iph=mcont.find(imgh)#找出【图片】链接的头部位置
                    ipt=mcont.find(imgt,iph)#找出【图片】链接的尾部位置
                    for b in range(0,10):#又是硬编码····
                            mpic=mcont[iph:ipt+len(imgt)]#原始图片链接,链接字符的噪声太大
                            iph1=mpic.find("http")#对上面的链接再过滤一次
                            ipt1=mpic.find(imgt)  #同上
                            picx=mpic[iph1:ipt1+len(imgt)]
                            if len(picx)<150:#仍有一些URL是“http:ss.png><dfsdf>.jpg”(设为100竟然会误伤)
                                    pica=picx #【是len(picx)<100而不是picx!!】不然会不显示
                                    print pica
                                    ############################
                                    ###########开始下载pica这个图片
                                    urllib.urlretrieve(pica,"pic\\tb"+str(i)+"x"+str(a)+"x"+str(b)+".jpg")                                  
                                    ###########   pica图片下载完毕.(加上各循环体的数字,以免名字重复)
                                    ############################
                            iph=mcont.find(imgh,iph+len(imgh))#开始下一个循环
                            ipt=mcont.find(imgt,iph)
                    ############model个人URL内的【图片链接】提取完毕##########
                pa=cont.find(ahref,pa+len(ahref))#将原来的头部位作为起始点,继续向后找下一个头部
                pt=cont.find(target,pa)#继续找下一个尾部
        i+=1

相关文章

  • 使用Python统计代码运行时间的两种方法

    使用Python统计代码运行时间的两种方法

    有时候我们需要记录一个程序运行的时间,下面这篇文章主要给大家介绍了关于使用Python统计代码运行时间的两种方法,文中通过图文以及示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • Pytorch深度学习经典卷积神经网络resnet模块训练

    Pytorch深度学习经典卷积神经网络resnet模块训练

    这篇文章主要介绍了Pytorch深度学习经典卷积神经网络resnet模块训练,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • Python给文件夹加解密的实现

    Python给文件夹加解密的实现

    数据泄露已经成为一个严重的问题,为了保护用户和公司的隐私,给文件夹加密已经成为一个必要的步骤,本文主要介绍了Python给文件夹加解密的实现,感兴趣的可以了解一下
    2023-11-11
  • 不管你的Python报什么错,用这个模块就能正常运行

    不管你的Python报什么错,用这个模块就能正常运行

    说到python强大的地方,那真是太多了,优雅、简洁、丰富且强大的第三方库,开发速度快,活跃度高等,本文讲到的就是其中一个模块,用了它,再也不用担心代码不能运行了
    2018-09-09
  • Python Pandas学习之Pandas数据结构详解

    Python Pandas学习之Pandas数据结构详解

    Pandas中一共有三种数据结构,分别为:Series、DataFrame和MultiIndex(老版本中叫Panel )。其中Series是一维数据结构,DataFrame是二维的表格型数据结构,MultiIndex是三维的数据结构。本文将详细为大家讲解这三个数据结构,需要的可以参考一下
    2022-02-02
  • 解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题

    解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题

    这篇文章主要介绍了解决Ubuntu18中的pycharm不能调用tensorflow-gpu的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 关于Python Socket编程的要点详解

    关于Python Socket编程的要点详解

    Socket是网络编程的一个抽象概念,通常我们用一个Socket表示“打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可,这篇文章主要给大家介绍了关于Python Socket编程的相关资料,需要的朋友可以参考下
    2021-08-08
  • 将Python应用部署到生产环境的小技巧分享

    将Python应用部署到生产环境的小技巧分享

    文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完善、文档更新、环境搭建、自动化流水线、性能调优、监控与告警、安全加固以及故障恢复
    2025-01-01
  • Python利用Beautiful Soup模块创建对象详解

    Python利用Beautiful Soup模块创建对象详解

    这篇文章主要介绍了Python利用Beautiful Soup模块创建对象的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • Python求导数的方法

    Python求导数的方法

    这篇文章主要介绍了Python求导数的方法,涉及Python数学运算的相关技巧,需要的朋友可以参考下
    2015-05-05

最新评论