首页
Portal
服务中心
成功案例
关于我们
新闻资讯
社区中心
BBS
立即登录
没有账号?
马上注册
QQ登录
微信登录
解决方案
微信开发
移动APP
网站建设
品牌设计
公众号
小程序
App
网站
系统及其它
企业文化
发展历程
诚聘英才
联系我们
公司新闻
行业新闻
成都思维定制科技有限公司
»
社区中心
›
板块
›
研发
›
Python爬虫框架Scrapy初识
查看:
9245
|
回复:
0
Python爬虫框架Scrapy初识
[复制链接]
wesley.chen
wesley.chen
当前离线
积分
21
3
主题
3
帖子
21
积分
新手上路
新手上路, 积分 21, 距离下一级还需 29 积分
新手上路, 积分 21, 距离下一级还需 29 积分
积分
21
发消息
发表于 2018-12-3 10:59:41
|
显示全部楼层
|
阅读模式
本帖最后由 wesley.chen 于 2018-12-3 11:06 编辑
Scrapy简介
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。
其最初是为了 页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬虫。
详细教程可以查看
Scrapy文档
Scrapy的安装
scrapy需要运行在python2.7、python3.3或者更高的版本上。可先利用python -V 查看自己的python版本。
一般推荐使用pip进行安装(如果未安装pip,需要先安装pip)
pip install scrapy安装完成之后,输入:scrapy,当出现如下输出,说明安装完成:
备注:
scrapy以来的一些包
:
lxml:一种高效的XML和HTML解析器,
PARSEL:一个HTML / XML数据提取库,基于上面的lxml,
w3lib:一种处理URL和网页编码多功能辅助
twisted,:一个异步网络框架
cryptography and pyOpenSSL,处理各种网络级安全需求
以上包需要的最低版本:
Twisted 14.0
lxml 3.4
pyOpenSSL 0.14
创建项目
在进行具体的爬取之前,我们需要先利用命令行创建项目
scrapy startproject qichacha输入命令后,出现以下提示,则代表创建成功
创建你的爬虫脚本
我们可以利用一下命令快速创建你的爬虫模板
scrapy genspider qcc
www.qichacha.com
你可以看到如下目录结构:
然后开始就可以在qcc.py中开始我们的爬虫逻辑了。
一个简单的爬虫实例:
# -*- coding: utf-8 -*-import scrapy
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
from beianw.items import BeianwItem
class BeianSpider(scrapy.Spider):
name = 'beian'
allowed_domains = ['www.beianw.com']
start_urls = ['http://www.beianw.com/home/index/四川/1?t=2']
def parse(self, response):
company = response.css('.translist tr')
for v in company:
item = BeianwItem()
item['website'] = v.css('td a::text').extract()[0]
item['companyName'] = v.css('td::text').extract()[0]
item['icpNo'] = v.css('td::text').extract()[2]
item['icpDate'] = v.css('td::text').extract()[3]
yield item
# 递归爬取下一页的内容
next_page = response.css('.page-default a')
maxpage = len(next_page.css('::text').extract()) -1
if(next_page.css('::text').extract()[maxpage] == '下一页'):
next_page_href = next_page.css('::attr(href)').extract()[maxpage]
next_page = response.urljoin(next_page_href)
yield scrapy.Request(next_page, callback=self.parse)
运行爬虫脚本
scrapy crawl qcc
提取数据
css选择器
xpath选择器
正则
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
发帖
回复
搜索
搜索
热门版块:
推广
研发
公告
帖子推荐:
01.
【微信97853300】亚星假线现场客服
02.
【微信7228914】科普腾龙国际官网电话客服
03.
【微信97853300】万宝路上分流程
04.
【微信7228914】科普盛源在线微投官网【薇7
05.
【微信97905670】欧亚国际app网址
06.
【微信7228914】科普小勐拉线上投注平台【
07.
【微信87806】腾龙国际开户网址
08.
【微信7228914】科普小勐拉网投网站【薇722
图文热帖:
客服咨询
15228921317
服务时间 9:00-22:00
在线客服
客服微信
产品咨询
售后咨询
本版
文章
帖子
用户
快速回复
返回顶部
返回列表