福利啊福利,本次为大家带来的项目是抓取淘宝MM照片并保存起来,大家有没有很激动呢?

最新动态

更新时间:2015/8/2 最近好多读者反映代码已经不能用了,原因是淘宝索引页的MM链接改了。网站改版了,URL的索引已经和之前的不一样了,之前可以直接跳转到每个MM的个性域名,现在中间加了一个跳转页,本以为可以通过这个页面然后跳转到原来的个性域名,而经过一番折腾发现,这个跳转页中的内容是JS动态生成的,所以不能用Urllib库来直接抓取了,本篇就只提供学习思路,代码不能继续用了。 之后博主会利用其它方法来尝试解决,如果解决,第一时间更新!谢谢大家!

更新时间:2016/3/26 如上问题已解决,利用 PhantomJS的动态解析即可完成。因为 PySpider 同样支持 PhantomJS,所以我直接利用了 PySpider 来完成,解决方案如下 解决方案 另外如果不想使用框架,可以直接利用 Selenium + PhantomJS 来解析,同样方便,解决方案可以参考 动态解析解决方案

本篇目标

1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程

1.URL的格式

在这里我们用到的URL是 http://mm.taobao.com/json/request_top_list.htm?page=1,问号前面是基地址,后面的参数page是代表第几页,可以随意更换地址。点击开之后,会发现有一些淘宝MM的简介,并附有超链接链接到个人详情页面。 我们需要抓取本页面的头像地址,MM姓名,MM年龄,MM居住地,以及MM的个人详情页面地址。

2.抓取简要信息

相信大家经过上几次的实战,对抓取和提取页面的地址已经非常熟悉了,这里没有什么难度了,我们首先抓取本页面的MM详情页面地址,姓名,年龄等等的信息打印出来,直接贴代码如下

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

__author__ = 'CQC'

# -*- coding:utf-8 -*-

import urllib

import urllib2

import re

class Spider:

def __init__(self):

self.siteURL = 'http://mm.taobao.com/json/request_top_list.htm'

def getPage(self,pageIndex):

url = self.siteURL + "?page=" + str(pageIndex)

print url

request = urllib2.Request(url)

response = urllib2.urlopen(request)

return response.read().decode('gbk')

def getContents(self,pageIndex):

page = self.getPage(pageIndex)

pattern = re.compile('

运行结果如下

2.文件写入简介

在这里,我们有写入图片和写入文本两种方式

1)写入图片

1

2

3

4

5

6

7

#传入图片地址,文件名,保存单张图片

def saveImg(self,imageURL,fileName):

u = urllib.urlopen(imageURL)

data= u.read()

f =open(fileName, 'wb')

f.write(data)

f.close()

2)写入文本

1

2

3

4

5

def saveBrief(self,content,name):

fileName = name + "/" + name + ".txt"

f = open(fileName,"w+")

print u"正在偷偷保存她的个人信息为",fileName

f.write(content.encode('utf-8'))

3)创建新目录

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

#创建新目录

def mkdir(self,path):

path = path.strip()

# 判断路径是否存在

# 存在 True

# 不存在 False

isExists=os.path.exists(path)

# 判断结果

if not isExists:

# 如果不存在则创建目录

# 创建目录操作函数

os.makedirs(path)

return True

else:

# 如果目录存在则不创建,并提示目录已存在

return False

3.代码完善

主要的知识点已经在前面都涉及到了,如果大家前面的章节都已经看了,完成这个爬虫不在话下,具体的详情在此不再赘述,直接帖代码啦。

1

spider.py

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

__author__ = 'CQC'

# -*- coding:utf-8 -*-

import urllib

import urllib2

import re

import tool

import os

#抓取MM

class Spider:

#页面初始化

def __init__(self):

self.siteURL = 'http://mm.taobao.com/json/request_top_list.htm'

self.tool = tool.Tool()

#获取索引页面的内容

def getPage(self,pageIndex):

url = self.siteURL + "?page=" + str(pageIndex)

request = urllib2.Request(url)

response = urllib2.urlopen(request)

return response.read().decode('gbk')

#获取索引界面所有MM的信息,list格式

def getContents(self,pageIndex):

page = self.getPage(pageIndex)

pattern = re.compile('

(.*?)

python爬虫淘宝评论图片_Python爬虫实战四之抓取淘宝MM照片相关推荐

  1. Python爬虫编程思想(6):实战案例:抓取所有的网络资源

    Python爬虫编程思想(7):实战案例:抓取博客文章列表 到现在为止,我们已经对网络爬虫涉及到的基本知识有了一个初步的了解.本文会编写一个简单的爬虫应用,以便让读者对爬虫有一个基本的认识.本节要编写 ...

  2. python3 爬虫实战案例 (抓取淘宝信息)(淘宝加了搜索必须登录的验证,此方法所到的结果都是0)

    需求:对比足球,篮球,乒乓球,羽毛球,网球,相关物品的销售量保存到excle中 和抓取淘宝关键字相关信息的销售量,这和之前抓取csdn网站浏览量取不同,抓取csdn浏览量主要是通过bs4Tag标签,而 ...

  3. python爬虫微博评论图片_python爬虫爬取微博评论

    原标题:python爬虫爬取微博评论 python爬虫是程序员们一定会掌握的知识,练习python爬虫时,很多人会选择爬取微博练手.python爬虫微博根据微博存在于不同媒介上,所爬取的难度有差异,无 ...

  4. python爬虫网页中的图片_Python爬虫爬取一个网页上的图片地址实例代码

    本文实例主要是实现爬取一个网页上的图片地址,具体如下. 读取一个网页的源代码: import urllib.request def getHtml(url): html=urllib.request. ...

  5. python爬微博超话图片_Python爬虫:《庆余年》人物图谱和微博传播路径

    利用Python分析<庆余年>人物图谱和微博传播路径 庆余年电视剧终于在前两天上了,这两天赶紧爬取微博数据看一下它的表现. 庆余年 <庆余年>是作家猫腻的小说.这部从2007年 ...

  6. python好用的库存尾货女装_Python抓取淘宝女装信息(一)

    本次实战案例以抓取淘宝上连衣裙信息为切入点,共抓取4356件连衣裙产品信息.在此基础上进行初步分析.这里首先感谢@大宇,后期的数据处理与图表制作全靠大神帮助.下面我们进入正式介绍环节. 淘宝.京东.链 ...

  7. python爬虫抓收费图片_简单的抓取淘宝图片的Python爬虫

    写了一个抓taobao图片的爬虫,全是用if,for,while写的,比较简陋,入门作品. 从网页http://mm.taobao.com/json/request_top_list.htm?type ...

  8. Python淘宝美眉图片下载爬虫视频教程-何家胜-专题视频课程

    Python淘宝美眉图片下载爬虫视频教程-21985人已学习 课程介绍         本套视频主要讲述Python项目实训一:如何利用Python的while循环体设计实现网络爬虫刷博器的程序的设计 ...

  9. Python爬虫实战(4):抓取淘宝MM照片

    Python爬虫入门(1):综述 Python爬虫入门(2):爬虫基础了解 Python爬虫入门(3):Urllib库的基本使用 Python爬虫入门(4):Urllib库的高级用法 Python爬虫 ...

  10. Python爬虫实战:抓取淘宝MM照片

    本篇目标 1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程 1.URL的格式 在这里我们用到的URL ...

最新文章

  1. JAVA培训哪里好?学习Java难不难
  2. Jenkins X:基于Kubernetes的CI/CD平台
  3. C语言学习之分别用while、for 编写程序,计算2*4*6*......*100的值
  4. IIS 支持 php
  5. We're A Happy Family-A Tribute To Ramones
  6. mysql 表迁移 并筛选,如何使MySql View在获取时筛选每个表
  7. 怎么装python编译器_python编译器安装
  8. struts2 ajax上传文件 file空_WordPress插件漏洞分析:WPDiscuz任意文件上传漏洞
  9. c语言增加动态分配的存储空间吗,C语言 关于内存动态分配问题
  10. 欧几里德算法+拓展欧几里德算法
  11. .Net并行编程系列文章导航
  12. WinForm 界面美化
  13. pp助手苹果版本_pp 助手停止服务/共享 ID 结束,旧版应用还能这样下载
  14. linux下sybase创建数据库,sybase数据库环境搭建教程(多图教程)
  15. mw150um 驱动程序win10_水星MW150UM无线网卡驱动下载-水星MW150UM 1.0无线网卡驱动官方版下载[电脑版]-华军软件园...
  16. 使用 Vite + 前端框架 (SolidJs,React,Svelte,Vue) 来开发 油猴脚本
  17. python 3d重建_python三维重建
  18. 小样本(少样本)目标检测概述(few-shot object detection)
  19. Android 扫一扫功能 二维码 条形码
  20. 游戏 - PS4 海绵宝宝: 争霸比基尼海滩重注版

热门文章

  1. 计算机中新建的快捷键是什么,什么是新建文件夹的快捷键?新建文件夹的快捷键有哪些?...
  2. 【Axure交互教程】 滑动拼图验证登录效果
  3. [娱乐]华为HWT文件手动修改字体名称
  4. java matlab绘图_Java 调用Matlab画图实用教程
  5. 如何安装matlab?官网下载详细教程
  6. 分贝测试软件哪个好 家庭影院,家庭影院5.1和7.1哪种好?5.1和7.1家庭影院区别...
  7. 经典 55道 MySQL面试题及答案
  8. TransE算法详解
  9. HFSS天线设计实例_BLE天线优化分析
  10. VB2010(18)_各种对话框的使用