简单的抓取淘宝图片的Python爬虫


Posted in Python onDecember 25, 2014

写了一个抓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中 ? : 三元表达式的使用介绍
Oct 09 Python
Python Deque 模块使用详解
Jul 04 Python
简单的抓取淘宝图片的Python爬虫
Dec 25 Python
基于Python Shell获取hostname和fqdn释疑
Jan 25 Python
Python字典简介以及用法详解
Nov 15 Python
python爬虫入门教程--快速理解HTTP协议(一)
May 25 Python
django中SMTP发送邮件配置详解
Jul 19 Python
Python利用WMI实现ping命令的例子
Aug 14 Python
Mac PyCharm中的.gitignore 安装设置教程
Apr 16 Python
python开发入门——列表生成式
Sep 03 Python
Python xlwings插入Excel图片的实现方法
Feb 26 Python
利用python实时刷新基金估值(摸鱼小工具)
Sep 15 Python
简单使用Python自动生成文章
Dec 25 #Python
Python 抓取动态网页内容方案详解
Dec 25 #Python
利用Psyco提升Python运行速度
Dec 24 #Python
Python解决鸡兔同笼问题的方法
Dec 20 #Python
Python列表计数及插入实例
Dec 17 #Python
Python二维码生成库qrcode安装和使用示例
Dec 16 #Python
Mac下Supervisor进程监控管理工具的安装与配置
Dec 16 #Python
You might like
改进的IP计数器
2006/10/09 PHP
php用正则表达式匹配URL的简单方法
2013/11/12 PHP
3款值得推荐的微信开发开源框架
2014/10/28 PHP
php动态添加url查询参数的方法
2015/04/14 PHP
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
window.dialogArguments 使用说明
2011/04/11 Javascript
js验证身份证号有效性并提示对应信息
2015/10/19 Javascript
Jquery插件仿百度搜索关键字自动匹配功能
2016/05/11 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
bootstrap为水平排列的表单和内联表单设置可选的图标
2017/02/15 Javascript
vue addRoutes实现动态权限路由菜单的示例
2018/05/15 Javascript
vue-router动态设置页面title的实例讲解
2018/08/30 Javascript
vue实现分页组件
2020/06/16 Javascript
node中使用log4js4.x版本记录日志的方法
2019/08/20 Javascript
jQuery实现鼠标放置名字上显示详细内容气泡提示框效果的方法分析
2020/04/04 jQuery
vue通过v-html指令渲染的富文本无法修改样式的解决方案
2020/05/20 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
python基础教程之元组操作使用详解
2014/03/25 Python
Python编写Windows Service服务程序
2018/01/04 Python
根据DataFrame某一列的值来选择具体的某一行方法
2018/07/03 Python
Python标准库使用OrderedDict类的实例讲解
2019/02/14 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
Python随机函数库random的使用方法详解
2019/08/21 Python
使用python采集Excel表中某一格数据
2020/05/14 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
重构Python代码的六个实例
2020/11/25 Python
用CSS3实现无限循环的无缝滚动的实例代码
2017/07/04 HTML / CSS
使用Canvas操作像素的方法
2018/06/14 HTML / CSS
英国女性时尚鞋类的潮流制造者:Koi Footwear
2018/10/19 全球购物
英国在线购买轮胎、预订汽车、汽车维修和装配网站:Protyre
2020/04/12 全球购物
学校百日安全生产活动总结
2014/07/05 职场文书
法定代表人授权委托书格式
2014/10/14 职场文书
订货会主持词
2015/07/01 职场文书
2015年小学生国庆节演讲稿
2015/07/30 职场文书
2016优秀青年志愿者事迹材料
2016/02/25 职场文书