当前位置: 首页 > news >正文

python爬虫scrapy安装_Python之Scrapy爬虫框架安装及使用详解

题记:早已听闻python爬虫框架的大名。近些天学习了下其中的Scrapy爬虫框架,将自己理解的跟大家分享。有表述不当之处,望大神们斧正。

一、初窥Scrapy

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。

其最初是为了 页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬虫。

本文档将通过介绍Scrapy背后的概念使您对其工作原理有所了解, 并确定Scrapy是否是您所需要的。

当您准备好开始您的项目后,您可以参考 入门教程 。

二、Scrapy安装介绍

Scrapy框架运行平台及相关辅助工具

Python 2.7(Python最新版3.5,这里选择了2.7版本)

Python Package: pip and setuptools. 现在 pip 依赖 setuptools ,如果未安装,则会自动安装setuptools 。

lxml.大多数Linux发行版自带了lxml。如果缺失,请查看http://lxml.de/installation.html

OpenSSL. 除了Windows(请查看 平台安装指南)之外的系统都已经提供。

您可以使用pip来安装Scrapy(推荐使用pip来安装Python package).

Windows下安装流程:

1、安装Python 2.7之后,您需要修改 PATH 环境变量,将Python的可执行程序及额外的脚本添加到系统路径中。将以下路径添加到 PATH 中:

C:\Python27\;C:\Python27\Scripts\;

除此之外,还可以用cmd命令来设置Path:

c:\python27\python.exe c:\python27\tools\scripts\win_add2path.py

安装配置完成之后,可以执行命令python --version查看安装的python版本。(如图所示)

请确认下载符合您系统的版本(win32或者amd64)

3、打开命令行窗口,确认 pip 被正确安装:

4、到目前为止Python 2.7 及 pip 已经可以正确运行了。接下来安装Scrapy:

至此windows下Scrapy安装已经结束。

三、Scrapy入门教程

1、在cmd中创建Scrapy项目工程。

scrapy startproject tutorial

2、文件目录结构如下:

解析scrapy框架结构:

scrapy.cfg: 项目的配置文件。

tutorial/: 该项目的python模块。之后您将在此加入代码。

tutorial/items.py: 项目中的item文件。

tutorial/pipelines.py: 项目中的pipelines文件。

tutorial/settings.py: 项目的设置文件。

tutorial/spiders/: 放置spider代码的目录。

3、编写简单的爬虫

1)、在item.py中配置需采集页面的字段实例。

2)、在tutorial/spiders/spider.py中书写要采集的网站以及分别采集各字段。

3、在tutorial/pipelines.py管道中保存数据。

4、tutorial/settings.py中配置执行环境。

5、新建main文件执行爬虫代码。

最终,执行main.py后在data.json文件中获取到采集结果的json数据。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/liruihua/p/5957393.html

相关文章:

  • echarts 柱状图设置边框_Echarts图表的悬浮框位置的调整
  • nacos修改密码_SpringBoot接入Nacos作为配置中心
  • 中如何调取api_什么是区块头?如何通过区块链API获得区块头信息?| Tokenview
  • oracle 按照时间倒序_oracle的逆序键索引应用!
  • linux 切换cuda版本_linux – 如何更改CUDA版本
  • python dxf matlibplot_python中如何用matlibplot画正弦曲线?
  • npm audit fix什么意思_尝试解决 nvm 1.1.7 无法安装npm
  • mysql cmake_Mysql的cmake编译与安装
  • mysql解析数据类型_MySQL数据类型全解析
  • 加载mysql驱动失败_Qt MySQL驱动加载失败
  • mysql cluster主从_MySQL-Cluster 和主从(Master,Slave)搭建总结
  • 三级菜单 mysql_PHP+mysql实现的三级联动菜单功能示例
  • php创建mysql数据库表_php创建mysql数据库以及数据表
  • eclipse html 报错_Maven教程6: Maven与Eclipse整合
  • 两台mysql如何同步数据_实现两台MySQL数据库数据的同步的方法
  • 【译】JS基础算法脚本:字符串结尾
  • Angular 4.x 动态创建组件
  • HomeBrew常规使用教程
  • Intervention/image 图片处理扩展包的安装和使用
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • JavaScript 基础知识 - 入门篇(一)
  • Node项目之评分系统(二)- 数据库设计
  • SpringBoot几种定时任务的实现方式
  • Vue实战(四)登录/注册页的实现
  • Webpack 4x 之路 ( 四 )
  • 分布式熔断降级平台aegis
  • 你不可错过的前端面试题(一)
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 时间复杂度与空间复杂度分析
  • 通过npm或yarn自动生成vue组件
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 智能网联汽车信息安全
  • 7行Python代码的人脸识别
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • $.ajax中的eval及dataType
  • (33)STM32——485实验笔记
  • (分布式缓存)Redis分片集群
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (算法)前K大的和
  • (算法二)滑动窗口
  • (推荐)叮当——中文语音对话机器人
  • ****Linux下Mysql的安装和配置
  • ***详解账号泄露:全球约1亿用户已泄露
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET Micro Framework初体验
  • .NET 表达式计算:Expression Evaluator
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • .NET学习全景图
  • ?php echo ?,?php echo Hello world!;?
  • @Autowired和@Resource的区别
  • []sim300 GPRS数据收发程序
  • []常用AT命令解释()
  • [202209]mysql8.0 双主集群搭建 亲测可用
  • [Android]竖直滑动选择器WheelView的实现
  • [Avalon] Avalon中的Conditional Formatting.