用react-native开发一个IOS NBA资讯app(二) ----server探究,爬虫获取新闻数据(持续更新)

上一章节我们创建了基本项目的构架。接下来开始,我们就会真正进入项目中去,去一个个一探究竟。那好的,第一个我们要深入的便是整个app项目的后台,也就是第一章我介绍的server文件夹。因为平时项目中使用最多的是nodejs,所以我搭建后台也是用nodejs来进行的。而nodejs最简单的搭建就是使用express。好的,我们来看一看我们的package.json依赖模块。

用了几个非常简单但是实用性强的模块。

(1)body-paser解析post请求中上传参数。
(2)cheerio是一个专门用于解析请求来网页dom数据的。
(3)express是在nodejs的基础上封装了一层,然后能够更便捷的搭建服务层。
(4)给爬虫提供可抓取的页面,request模块可以完成更多http请求。

接下来我们看一下我们的项目构建:

运用了restful的接口模式,然后我用apis来放置我app请求的接口。所以大量的逻辑处理都是在这里面。好了,了解了基础的后台项目架构,那让我们看一下我是如何爬取虎扑新闻的数据的。

大家可以看一下,这是我通过虎扑的手机网页爬取到当前新闻的id,标题,图片,创建时间以及来自哪个新闻发布消息。
最重要的就是request以及cheerio的双重使用。request来load要爬取的页面,而cheerio就解析出其中你需要的数据。而cheerio非常爽的地方在于,你可以在服务器层使用和jquery相同的语法来操作dom,这样我觉得比python的beatuifulsuop解析起来对前端程序员更友好。
好了,这就是server的构建,接下来,我们就开始app之旅吧。如果还是不太清楚,可以参考我的项目。
项目地址:https://github.com/strongwray...

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...