reactnative实战系列教程之影片数据获取并解析.docVIP

reactnative实战系列教程之影片数据获取并解析.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
reactnative实战系列教程之影片数据获取并解析剖析

react native 实战系列教程之影片数据获取并解析 fetch介绍 fetch是React Native的一个网络请求库,使用该库不用引入模块,可以直接使用。一个简单的请求如下: fetch(http://facebook.github.io/react-native/movies.json) 发起请求之后,我们还需要对它的响应进行处理,只要这样 fetch(http://facebook.github.io/react-native/movies.json) .then((response)={ console.log(response) } ) .catch((e)={ console.log(e) } ) 在浏览器中打开调试工具,在Console下输入以上代码: 从上图可以看出fetch返回的数据对象Response包含body、headers、status等。 Response常用的两个函数是 json() - 返回一个JSON格式. text() - 返回一个文本. fetch还可以构造复杂一点的 fetch(/endpoint/, { method: POST, headers: { Accept: application/json, Content-Type: application/json, }, body: JSON.stringify({ firstParam: yourValue, secondParam: yourOtherValue, }) }) 可以配置请求的方法method,头部headers和body。 上面的请求都是异步的,也可以使用同步操作,如下 async getMoviesFromApi() { try { let response = await fetch(http://facebook.github.io/react-native/movies.json); let responseJson = await response.json(); return responseJson.movies; } catch(error) { console.error(error); } } 整个方法是异步的,但是内部的fetch请求是同步的,使用await 会等待fetch返回结果response再执行下一步。记得try catch任何异常。 更多fetch相关,可以查看官方文档 使用fetch获取数据 打开DramaComponent.js文件,定义一个方法fetchData fetchData(){ var url = /hanju/new; fetch(url) .then((res)= res.text()) .then((html)={ console.log(html); }) .catch((e)={ console.log(e); }).done(); } //在最初的render方法调用之后立即调用。 //网络请求、事件订阅等操作可以在这个方法中调用。 //作用相同与Fragment生命周期中的onViewCreate方法。 componentDidMount(){ this.fetchData(); } 这样我们就获取到网页html数据,接下来我们要解析html获取想要的数据。使用到的解析库是cheerio。 使用cheerio解析html获取影视信息 cheerio属于第三方模块,我们要使用它首先要先把它安装到我们的项目中来。 cheerio依赖events模块,所以events也要安装进来。不知道依赖关系也没事,在你运行程序的时候,它就会提示你缺少了哪个module,再安装下就可以了。 使用命令行cd到我们的跟目录下,然后执行命令 npm install cheerio --save npm install events --save 等待安装完毕之后,在DramaComponent.js中引入该模块 import Cheerio from cheerio; 然后将html加载到cheerio解析器里,利用cheerio API进行数据提取,通读cheerio API。 var $ = Cheerio.load(html); 我们要分析提取的网站地址是/hanju/new。打开该网站,右击查看网页源代码,先自己静态分析下,该如何通过

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档