1.创建一个爬虫项目

#创建蜘蛛
#scrapy startproject tutorial

2.定义自己要爬去的数据(在items.py中定义)

import scrapy
class ManscrapyItem(scrapy.Item):# define the fields for your item here like:name = scrapy.Field()href=scrapy.Field()content=scrapy.Field()pass

3.编写爬虫

import scrapy
import json
from  ..items import ManscrapyItem
class MaospiderSpider(scrapy.Spider):name = 'maospider'allowed_domains = ['cntour.cn']start_urls = ['http://www.cntour.cn/news/list.aspx?tid=51&page=1']# //*[@id="main"]/div/div[2]/div[1]/div[1]/ul/li/text()def parse(self, response):names=response.css('.newsList>ul>li')for name in names:item=ManscrapyItem()href=name.xpath('a/@href').extract()item['href']=hrefname=name.xpath('a/text()').extract()item['name']=name# content=name.xpath('/text()').extract()# item['content']=contentyield item

4.在piplins中实现你要爬去数据的保存逻辑:

import codecs
import json
class ManscrapyPipeline(object):def __init__(self):self.file=codecs.open('dataTest','wb',encoding='utf-8')def process_item(self, item, spider):line=json.dumps(dict(item),ensure_ascii=False)+'\n'self.file.write(line)return item

这里有个问题就是编码问题:

line=json.dumps(dict(item),ensure_ascii=False)+'\n' //当中的这个ensure_ascii=False 很重要

4.启动爬虫 (启动的方式也有几种)

# 启动蜘蛛
#scrapy crawl quotes

Scrapy教程demo相关推荐

  1. python爬虫执行scrapy crawl demo出现: import win32api ModuleNotFoundError: No module named 'win32api'错误

    执行: >scrapy crawl demo 可能会出现这个错误: import win32api ModuleNotFoundError: No module named 'win32api' ...

  2. python3 scrapy 教程_Scrapy 教程

    Scrapy 教程¶ 在本教程中,我们假定scrapy已经安装在您的系统上.如果不是这样的话,看 安装指南 . 我们将抓取' quotes.toscrape.com ' _,这是一个列出著名作家名言的 ...

  3. 微信小程序联盟:官方文档+精品教程+demo集合(12月更新……)

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debu ...

  4. 微信小程序导航:官方文档+精品教程+demo集合(5月9日更新)

    微信小程序联盟:官方文档+精品教程+demo集合 1:官方工具:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html?t=1 ...

  5. 八月微信小程序导航:官方文档+精品教程+demo集合(8月25...

    2019独角兽企业重金招聘Python工程师标准>>> 1:官方工具: https://mp.weixin.qq.com/debug/w ... tml?t=147643467846 ...

  6. Delphi xe6 andriod 编程入门教程demo随书光盘

    网上找到的 Delphi xe6 andriod 编程入门  随书光盘代码 Delphi xe6 andriod 编程入门教程demo随书光盘1 http://download.csdn.net/de ...

  7. Scrapy1.5入门(三)——Scrapy教程

    本文为译文,原文见地址:https://docs.scrapy.org/en/latest/intro/tutorial.html Scrapy教程 在本教程中,我们假设Scrapy已经在你的系统上成 ...

  8. scrapy教程基础篇

    文章目录 scrapy教程 1.安装 2.简介 3.项目教学 命令行 全局命令 项目命令 创建流程 实战讲解 文件作用 代码实例 `chin.py` `items.py` `pipelines.py` ...

  9. Python学习之Scrapy教程

    介绍: 这是我的Scrapy教程系列的第一篇文章,在这个Scrapy教程中,我将讨论Scrapy,BeautifulSoup的特性,比较它们,并帮助您决定哪个更适合您的项目. 谈论BeautifulS ...

最新文章

  1. JavaScript 找出数组中重复的元素
  2. Node.js~在linux上的部署~外网不能访问node.js网站的解决方法
  3. Vue组件通信的7个方法
  4. 本周有哪些值得读的 AI 论文?我们替你挑选了 18 篇
  5. golang刷Leetcode系列 --- 加1
  6. C#使用Xamarin开发可移植移动应用进阶篇(6.使用渲染器针对单个平台自定义控件),附源码
  7. 【ArcGIS Pro微课1000例】0006:ArcGIS Pro 2.5三维显示DEM数字高程模型
  8. centos6.5 MySQL 服务器_启用CentOS6.5 64位安装时自带的MySQL数据库服务器
  9. jQuery特效手风琴特效 手写手风琴网页特效
  10. 【C++】由指针常量和常量指针引发的问题
  11. 一款保险系统架构设计图
  12. RENIX 软件如何进行IP地址管理——网络测试仪实操
  13. TwinCAT3安装教程-EtherCAT学习
  14. 看服务器硬盘序列号,获得服务器硬件信息(CPUID、硬盘号、主板序列号、IP地址等)...
  15. 闪客工具:好玩的GifCam录制gif软件
  16. 基础教学 | 什么是负载均衡?
  17. sql server返回是星期几的函数
  18. JVM之内存结构详解
  19. 我的物联网项目之订单系统
  20. w7系统出现无法更新服务器,win7系统自动更新选项不能用了的解决方法

热门文章

  1. 【算法千题案例】每日LeetCode打卡——83.学生出勤记录 I
  2. PyCharm 主题和字体 (Scheme Editor Font)
  3. HDU 2201 JAVA
  4. 计算机参数或性能,电脑配置的性能参数都是什么意思?
  5. 按键单片机(实现流水的左移右移)
  6. idea乱码最终解决方案
  7. 长租公寓大数据|2019年中国长租公寓行业发展分析报告
  8. 2022年度复盘和2023年目标:在焦虑中探索,在体验中成长,在开放中升华
  9. 邮件协议POP3/IMAP/SMTP学习总结 SSL/TLS介绍 常用邮箱服务器设置
  10. 王道考研-操作系统b站学习第一章