# 1. 运行环境
1. python 2.7
2. Scrapy 1.4.0
## 1.2 环境搭建过程
#### 1. 确保已有python环境。
```python
$python
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:24:40) [MSC v.1500 64 bit (AMD64)] on win32
>>>
```
#### 2. 安装pip
或其他包管理工具也可以
windows:点击https://pypi.python.org/pypi/pip 下载pip-x.y.z.tar.gz (md5, pgp)
解压后进入文件夹执行:`python setup.py install`
或者直接下载exe文件进行安装,下载地址为:http://www.lfd.uci.edu/~gohlke/pythonlibs/#pip
#### 3.安装lxml
lxml是一种使用 Python 编写的库,可以迅速、灵活地处理 XML。选择对应的Python版本安装。
安装命令:`pip install lxml`
验证是否安装成功:`>>>import lxml`
#### 4.安装zope.interface,安装命令:
`pip install zope.interface`
#### 5.安装Twisted
Twisted是用Python实现的基于事件驱动的网络引擎框架,安装命令:
`pip install twisted`
#### 6.安装pyOpenSSL
pyOpenSSL是Python的OpenSSL接口,安装命令:
`pip install pyopenssl`
#### 7.安装win32py (windows需要)
提供win32api,点击 http://sourceforge.net/projects/pywin32/files/pywin32/ 下载
#### 8.安装Scrapy
`pip install scrapy`
并将scrapy加入环境变量
#### 9.测试是否scrapy可用:
`scrapy bench`
安装完成
---
# 2. 本项目的运行
#### 下载或克隆本项目至本地目录
目录结构(主要):
```
taobaospider(or your folder)
|
|-scrapy.cfg
|-.settings
|-result
|-taobaospider
|
|-__init__.py
|-items.py
|-middlewares.py
|-pipelines.py
|-settings.py
|-spiders
|
|-__init__.py
|-taobao.py
|-taobaodata.py
```
## 2.1 项目1:获取淘宝首页商品分类
#### 1. 修改pipelines.py
(打开对应的注释关闭同级其他注释即可)
```python
...
class TaobaospiderPipeline(object):
def __init__(self):
self.file = codecs.open('class.json', 'wb', encoding='utf-8')
...
```
#### 2. 运行
在`.setting`同级目录下运行:
`scrapy crawl taobao`
(说明:运行的是`taobao.py`文件)
#### 3. 检查结果
生成`class.json`文件,内容如下:
```json
{"class2": ["羽绒服女", "毛呢外套女", "毛衣女", "针织衫女", "棉服女", "连衣裙", "风衣女装", "裤子女装", "卫衣女装", "T恤女装", "衬衫女装", "半身裙", "西装女", "打底衫女", "夹克女", "皮衣女", "妈妈装","婚纱礼服"], "class1": "女装"}
{"class2": ["外套男装", "夹克男装", "衬衫男装", "T恤男装", "棒球服男装", "牛仔外套男装", "卫衣男装", "西装男", "风衣男装", "皮衣男装", "针织衫男装", "呢大衣男装", "休闲裤男装", "牛仔裤男装", "运动裤男装", "九分裤男装", "马甲男装", "羽绒服男装", "棉衣男", "中老年男装"], "class1": "男装"}
{"class2": ["保暖内衣", "丝绒睡衣", "内裤女", "文胸", "内裤男", "长袖睡衣", "珊瑚绒睡衣", "夹棉睡衣", "长筒袜", "棉袜", "情侣睡衣", "秋裤", "保暖背心", "睡袍", "男士睡衣", "塑身衣", "内衣套装", "打底裤", "连体睡衣", "睡裙女冬", "聚拢文胸", "男士袜子", "棉袜女", "卡通睡衣"], "class1": "内衣"}
...
```
## 2.2 项目2:爬取各个分类下的商品
#### 1. 修改pipelines.py
(打开对应的注释关闭同级其他注释即可)
```python
class TaobaospiderPipeline(object):
def __init__(self):
#self.file = codecs.open('class.json', 'wb', encoding='utf-8')
self.file = codecs.open('yourname.json', 'wb', encoding='utf-8')
```
#### 2. 运行
在`.setting`同级目录下运行:
`scrapy crawl taobaodata`
(说明:运行的是`taobaodata.py`文件)
#### 3. 检查结果
在运行界面看到运行信息:
```
...
{'class1': '\xe5\xa5\xb3\xe8\xa3\x85',
'class2': '\xe6\xaf\x9b\xe8\xa1\xa3\xe5\xa5\xb3',
'price': u'89.00',
'sales': 13000.0,
'store': u'<',
'title': u'\u534a\u9ad8\u9886\u52a0\u539a\u751c\u7f8e\u6253\u5e95\u5957\u5934\u
97e9\u7248\u5bbd\u677e\u6bdb\u8863'}
...
```
生成`yourname.json`文件,内容如下:
```json
{"title": "秋冬韩版半高领修身显瘦加厚针织衫", "price": "49.00", "sales": 5557.0, "class2": "毛衣女", "store": "<", "class1": "女装"}
{"title": "秋冬宽松半高领套头学生韩版加厚毛衣", "price": "88.00", "sales": 8771.0, "class2": "毛衣女", "store": "", "class1": "女装"}
...
```
#### 其他说明
本项目的保存结果已经全部保存至result文件夹下
---
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。
资源推荐
资源详情
资源评论
收起资源包目录
scrapy爬虫天猫(淘宝)店铺店名、月销售量、价格等详细信息。涉及分类大类30多个,小类数百个。总爬取结果50万+条.zip (67个子文件)
WGT-code
class.json 10KB
.settings
org.eclipse.core.resources.prefs 337B
.gitattributes 31B
note.txt 2KB
scrapy.cfg 268B
taobaospider
__init__.py 0B
pipelines.py 737B
settings.pyc 766B
spiders
__init__.py 161B
taobao.py 853B
taobaodata.py 9KB
taobaodata-bak.py 5KB
__init__.pyc 158B
.gitignore 64B
items.py 708B
__init__.pyc 150B
.gitignore 46B
settings.py 3KB
middlewares.py 2KB
resource
taobao.html 638KB
run.py 49B
class_simple.json 269B
.project 383B
.gitignore 78B
.pydevproject 307B
README.md 5KB
result
r02-nanzhuang.json 3.31MB
r15-zhubao.json 1.47MB
r31-chezai.json 10KB
r28-lianyizhuangshi.json 7.1MB
r20-shengxuan.json 3.96MB
r18-yueqi.json 3.01MB
r33-wujindianzi.json 1.15MB
r17-biao.json 2.71MB
r07-shipin.json 739KB
r32-bangong.json 1.22MB
r12-shouji.json 365KB
r06-nanbao.json 1.46MB
r34-baojian.json 290KB
r08-ertong.json 2.59MB
result-1-38.zip 8.79MB
r01-women-clothing.json 2.87MB
r10-jiadian.json 1.32MB
r13-meizhuang.json 1.26MB
r29-chuangshang.json 1.53MB
r35-xuexi.json 139KB
r19-meishi.json 4.18MB
r21-lingshi.json 2.94MB
r38-wenxue.json 375KB
r36-ertongduwu.json 815KB
r23-chongwu.json 1.63MB
r27-jiaju.json 3.69MB
r24-nongzi.json 2.19MB
r09-yunchan.json 1.36MB
r30-qiche.json 434KB
r37-xiaoshuo.json 898KB
r25-zhuangxiu.json 262KB
r04-shoes.json 4.29MB
result-simple-class.json 3.15MB
r03-neiyi.json 3.73MB
r05-nvbao.json 1.63MB
r22-xuanhua.json 2.13MB
r16-yanjing.json 1.23MB
README.md 896B
r11-shuma.json 290KB
r26-jiancai.json 2.99MB
r14-huli.json 2.94MB
共 67 条
- 1
资源评论
JJJ69
- 粉丝: 6227
- 资源: 5778
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功