一、创建工程

#在命令行输入
scrapy startproject xxx  #创建项目

二、写item文件

#写需要爬取的字段名称
name = scrapy.Field()  #例

三、进入spiders写爬虫文件

①直接写爬虫文件自己手动命名
新建一个.py文件即可
②通过命令方式创建爬虫文件
scrapy gensipder yyy "xxx.com"
命名不能于工程名相同,爬取的域名区域

四、写爬虫文件

start_urls    #爬虫第一次执行时爬取的网址域
初始换模型对象
iteam = TencentItem() #将iteam文件引入
iteam['xxx']= each.xpath("./td[1]/a/text()").extract()[0]
#xpath返回选择性的列表,extract将其转换成字符串,再取出列表中的第一个字符。
yield iteam #放到管道文件
#由于爬取的页面不止一页,所以需要调用请求回调函数。
#将请求重新发送给调度器入队列,出队列,交给下载器下载
#每次处理完一页的页面请求后,发送下一页的页面请求
yield scrapy.Request(url, callback=self.parse, dont_filter=True)
#函数名parse,有请求才会触发回调函数,yield发送到调度器
//写在每次循环执行完的外面。

五、写管道文件

首先定义初始化方法
def __init__(self):
self.filename=open("xxx", "w")
def process_item(self, iteam, spider):
dict(iteam) #字典转换成python的格式
json.dumps(dict(iteam), ensure_ascii = False) + "\n" #转换成json格式
self.filename.write(text.encode("utf-8")) #如果出现无法写入问题,要加上.encode("utf-8")
return iteam
关闭文件
def close_spider(self, spider):
self.filename.close()

六、配置settings文件
    找到ITEM_PIPELINES配置项,配置到管道文件

七、设置请求报头
    在settings文件中找到DEFAULT_REQUEST_HEADERS配置

八、运行程序

scrapy crawl 文件名

crawlspider创建应用改写

一、创建工程

scrapy gensipder -t crawl tencent tencent.com
#导入crawlspider类和rule规则
#from scrapy.spider import CrawlSpider, Rule
#导入链接规则匹配类,用来提取符合规则的链接
#from scrapy.linkextractors import LinkExtractor
#from TencentSpider.items import TencentItem
class TencentSpider(CrawlSpider): #继承CrawlSpider类
name = "xxx" #爬虫名
allow_domains = [] #控制爬虫的爬取域
start_urls = []
#正则匹配规则,Response里页面信息中符合规则的数据
pagelink = LinkExtractor(allow=("start=\d+"))
#批量调用请求方法
rules = [
#pagelink=url, 跟进链接调用方法,是否跟进链接True
Rule(pagelink, callback = "parseTencent", follow = True)
] 斗鱼
将json格式转换成python格式,data段是列表
data = json.loads(response.text['data']

python之scrapy框架基础搭建的更多相关文章

  1. python爬虫scrapy框架——人工识别登录知乎倒立文字验证码和数字英文验证码(2)

    操作环境:python3 在上一文中python爬虫scrapy框架--人工识别知乎登录知乎倒立文字验证码和数字英文验证码(1)我们已经介绍了用Requests库来登录知乎,本文如果看不懂可以先看之前 ...

  2. Python爬虫Scrapy框架入门(0)

    想学习爬虫,又想了解python语言,有个python高手推荐我看看scrapy. scrapy是一个python爬虫框架,据说很灵活,网上介绍该框架的信息很多,此处不再赘述.专心记录我自己遇到的问题 ...

  3. Python爬虫 ---scrapy框架初探及实战

    目录 Scrapy框架安装 操作环境介绍 安装scrapy框架(linux系统下) 检测安装是否成功 Scrapy框架爬取原理 Scrapy框架的主体结构分为五个部分: 它还有两个可以自定义下载功能的 ...

  4. Python爬虫Scrapy框架入门(1)

    也许是很少接触python的原因,我觉得是Scrapy框架和以往Java框架很不一样:它真的是个框架. 从表层来看,与Java框架引入jar包.配置xml或.property文件不同,Scrapy的模 ...

  5. Python使用Scrapy框架爬取数据存入CSV文件(Python爬虫实战4)

    1. Scrapy框架 Scrapy是python下实现爬虫功能的框架,能够将数据解析.数据处理.数据存储合为一体功能的爬虫框架. 2. Scrapy安装 1. 安装依赖包 yum install g ...

  6. 基于python的scrapy框架爬取豆瓣电影及其可视化

    1.Scrapy框架介绍 主要介绍,spiders,engine,scheduler,downloader,Item pipeline scrapy常见命令如下: 对应在scrapy文件中有,自己增加 ...

  7. 爬虫入门之Scrapy 框架基础功能(九)

    Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非 ...

  8. Python爬虫-- Scrapy框架

    Scrapy框架 Scrapy使用了Twisted作为框架,Twisted有些特殊的地方是它是事件驱动的,并且比较适合异步的代码.对于会阻塞线程的操作包含访问文件.数据库或者Web.产生新的进程并需要 ...

  9. python爬虫scrapy框架

    Scrapy 框架 关注公众号"轻松学编程"了解更多. 一.简介 Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量 ...

随机推荐

  1. docker数据持久化/共享---volume,bind-mount,tmpfs-mount

    一.将Docker数据挂载到容器 在Docker中,要想实现数据的持久化(所谓Docker的数据持久化即数据不随着Container的结束而结束),需要将数据从宿主机挂载到容器中.目前Docker提供 ...

  2. 5.1 Spring5源码--Spring AOP源码分析一

    目标: 1.什么是AOP, 什么是AspectJ, 2. 什么是Spring AOP 3. Spring AOP注解版实现原理 4. Spring AOP切面原理解析 一. 认识AOP 1.1 什么是 ...

  3. MySQL索引(一)索引基础

    索引是数据库系统里面最重要的概念之一.一句话简单来说,索引的出现其实是为了提高数据查询的效率,就像书的目录一样. 常见模型 索引的出现是为了提高查询效率,但是实现索引的方式却有很多种,这里就介绍三种常 ...

  4. java中的反射(二)

    java中的反射(一):https://www.cnblogs.com/KeleLLXin/p/14060555.html 目录 一.反射 1.class类 2.访问字段 3.调用方法 4.调用构造方 ...

  5. 【题解】「CF1352A」Sum of Round Numbers

    应该是纯模拟吧. 直接输入一个字符串,然后一位一位看,如果不是0,就 k++,并计算这个数的真实的值,最后输出就行了. #include<iostream> #include<cst ...

  6. 关于微信NFC功能开发的链接总结

    特此申明:若有侵权,请联系我,我会第一时间删除 一. 小程序开发一般流程: 首先调用 wx.getHCEState(OBJECT), 判断设备是否支持NFC,(ios,android兼容性处理) 调用 ...

  7. 八、git学习之——忽略特殊文件、配置别名、搭建git服务器

    原文来自 一.忽略特殊文件 有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦,等等,每次git status都会显示Untracked files . ...

  8. 3款pdf插件介绍

    1.pdf.js:推荐使用.小窗口可以使用iframe来解决.ie8及以下不支持,但是360的兼容模式ie8下可以在新标签页中打开,在iframe中打不开,ie8中在新标签页也不支持打开.可使用ua- ...

  9. mac下git连接github远程仓库

    git配置 一.安装git 官方网站下载安装,如果有安装homebrew,在终端输入brew install git,安装后的位置在/Users/计算机用户名目录下安装完成后,在终端输入git --v ...

  10. Java-Word转PDF

    1. 下载jar包或者引入pom.xml 下载:https://www.e-iceblue.cn/Downloads/Free-Spire-Doc-JAVA.html 引入pom.xml:https: ...