我的编程空间,编程开发者的网络收藏夹
学习永远不晚

小程序开发(一):使用scrapy爬虫

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

小程序开发(一):使用scrapy爬虫

过完年回来,业余时间一直在独立开发一个小程序。主要数据是8000+个视频和10000+篇文章,并且数据会每天自动更新。

我会整理下整个开发过程中遇到的问题和一些细节问题,因为内容会比较多,我会分成三到四篇文章来进行,本文是该系列的第一篇文章,内容偏python爬虫。

本系列文章大致会介绍一下内容:

数据准备(python的scrapy框架)
接口准备(nodejs的hapijs框架)
小程序开发(mpvue以及小程序自带的组件等)
部署上线(小程序安全域名等配置以及爬虫/接口等线上部署维护)

数据获取

数据获取的方法有很多种,这次我们选择了爬虫的方式,当然写一个爬虫也可以用不同的语言,不同的方式。之前写过很多爬虫,这次我们选择了python的scrapy库。关于scrapy,百度百科解释如下:

Scrapy,Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。

学习scrapy,最好的方式就是先阅读一遍文档(Scrapy 1.6 documentation),然后照着文档里的例子写一写,慢慢就熟悉了。里面有几个很重要的概念是必须要理解的:

Items



官方对items的定义是“The main goal in scraping is to extract structured data from unstructured sources, typically, web pages.”,个人理解为数据结构,也就是要爬取数据的字段,最好能和数据库字段对应,便于入库。


Spiders

“Spiders are classes which define how a certain site (or a group of sites) will be scraped, including how to perform the crawl (i.e. follow links) and how to extract structured data from their pages (i.e. scraping items). ”,也就是爬虫比较核心的内容,定义爬虫的方式,一些策略,以及获取那些字段等等。


pipelines

“After an item has been scraped by a spider, it is sent to the Item Pipeline which processes it through several components that are executed sequentially.”,pipelines也就是我们爬虫拿到数据后要进行的处理操作,比如写入到文件,或者链接数据库,并且保存到数据库等等操作,都可以在这里进行操作。

Selectors

“When you’re scraping web pages, the most common task you need to perform is to extract data from the HTML source. ”,这部分就是如何解析html,从爬取到的html文件中解析出所需的数据,可以使用BeautifulSoup、lxml、Xpath、CSS等方法。


几个重要的部分,在上面进行了一些说明。

准备好环境(python3/scrapy等),我们就可以来写一个爬虫项目了。

爬取的内容来自于https://www.jqhtml.com这个网站。

scrapy startproject jqhtml

爬虫爬虫

​这样我们就顺利地完成了爬虫项目的编写。运行下,发现数据全部存到了数据库中。


scrapy爬虫项目的部署

scrapy爬虫项目的部署,我们使用官方的scrapyd即可,使用方法也比较简单,在服务器上安装scrapyd并且启动即可,然后在本地项目中配置deploy的路径,本地安装scrapy-client,使用命令deploy即可部署到服务器。

scrapyd提供了一些api接口来查看项目爬虫情况,以及执行或者停止执行爬虫。

这样我们就很方便的调这些接口来管理我们的爬虫任务了。

注意点:

  1. 如何部署scrapyd到服务器
  2. 如何设置scrapyd为系统后台服务及系统启动项

NEXT

下一篇,我们会介绍并且使用很火的一个nodejs后台api库 - hapijs。完成小程序所需要的所有接口的开发,以及使用定时任务执行爬虫脚本。​​​​

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

小程序开发(一):使用scrapy爬虫

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

小程序开发(一):使用scrapy爬虫

过完年回来,业余时间一直在独立开发一个小程序。主要数据是8000+个视频和10000+篇文章,并且数据会每天自动更新。我会整理下整个开发过程中遇到的问题和一些细节问题,因为内容会比较多,我会分成三到四篇文章来进行,本文是该系列的第一篇文章,
2023-01-31

pycharm下打开、执行并调试scrapy爬虫程序的方法

首先得有一个Scrapy项目,我在Desktop上新建一个Scrapy的项目叫test,在Desktop目录打开命令行,键入命令:scrapy startproject test1目录结构如下:打开Pycharm,选择open选择项目,ok
2022-06-04

怎么使用uniapp开发小程序

要使用uniapp开发小程序,你可以按照以下步骤进行操作:首先,安装uni-app开发工具,官方提供了uni-app的开发工具,你可以去uni-app官网下载并安装。创建一个新的uni-app项目,可以选择使用Vue.js或者原生小程序组件
怎么使用uniapp开发小程序
2024-04-09

使用Go语言开发高并发的网络爬虫

使用Go语言开发高并发的网络爬虫随着互联网的迅速发展,信息量呈爆炸式增长。为了获取海量的数据,网络爬虫成为了一种重要的工具。而在开发网络爬虫时,高并发的处理能力往往是一个关键的需求。本文将介绍如何使用Go语言开发一款高并发的网络爬虫。Go语
使用Go语言开发高并发的网络爬虫
2023-11-20

Python学习教程:关于Scrapy爬虫项目运行和调试的小技巧-第一讲

Python学习教程:关于Scrapy爬虫项目运行和调试的小技巧扫除运行Scrapy爬虫程序的bug之后,基本可以开始进行编写爬虫逻辑了。在正式开始爬虫编写之前,在这里跟大家介绍四个小技巧,可以方便我们操纵和调试爬虫。一、建立main.py
2023-06-02

小程序开发中animation怎么使用

这篇文章主要介绍“小程序开发中animation怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“小程序开发中animation怎么使用”文章能帮助大家解决问题。动画实例可以调用以下方法来描述动
2023-06-26

.net6怎么使用Senparc开发小程序

本篇内容介绍了“.net6怎么使用Senparc开发小程序”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.添加引用2.添加配置文件///
2023-07-02

【微信小程序开发】一文带你详解小程序组件和 API 的使用

引言 在小程序开发中,组件和API是非常重要的部分,它们可以帮助我们构建丰富的用户界面和实现各种功能。本文将介绍小程序中常用的组件和API,并提供相应的代码示例。 文章目录 引言组件文本组件图片组件按钮组件输入框组件列表组件
2023-08-20

小程序开发好用吗

这篇文章主要为大家展示了“小程序开发好用吗”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“小程序开发好用吗”这篇文章吧。一、融入生活,使用方便小程序制作具有多样化的功能。就拿餐饮行业小程序来说,小
2023-06-27

微信小程序|基于小程序+云开发制作一个菜谱小程序

今天吃什么?这是一个让强迫症左右为难的问题,跟随此文基于小程序+云开发制作一个菜谱小程序,根据现有食材一键生成菜谱,省心又省力。 一、小程序 1. 创建小程序
2023-08-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录