



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、如何基于node爬取网页源文件、初试牛刀:如何基于node爬取网页源文件大家好,我是何老师,今天给大家带来关于node爬虫的一个小案例。来我们直接进入主题:1 打开hbuilder,新建项目,然后新建crawler, js文件。2. 键入如下代码:var http二require ("http");t引用 http 模块var url二'http:/cd. 58. com/' ; /定义一个要爬的网页地址/*使用http对象的get方法获取url网页的内容,*第2个参数是冋调响应response的结果怎么处理*/http, get (url, functio
2、n(res) /定义一个html字符串var html二''当respone由data事件触发的时候,通过函数冋调,把爬的数据组装到html字符串 中。res. on(' data/, function (data) html+=data)当response对象由end事件触发的时候,冋调函数实现向控制台输出html字符串的 内容。res. on(' end', functiono console, log(html);). on(,error,, function() /当触发error事件的时候,控制台输出''console. log
3、(/z错误)3. 在当前文件的路径下打开命令窗口,输入node crawler, js前端教材研丸网页布局教学案例node. js案例弟爬虫node crawler, jsixx1 n a 、 丄 a运行结果:<span>u</opan></dt><dd tyl»bndi«pl«y: block ;e*> <a targets" i lank*href«m/wdi9 j ianglu/chuzu/w > ® 江路岀租 </a> <a target* i la
4、nk-hrefs m/wuhous i da j i e/chuzu/" > 武侯祠大街出 fl</a><a targets* i lank'href * *7 j inydng j ie/chuzu/m> 外双楠出 w</a> <a target* i lank-hrf s ,a/uudahuayuan/chuzu/m > 五大 花园岀 相<彳 i><a target* i lank-hrx 訂 7cdwydd/chuzu/"武阳大退出租 </&> <a target
5、sttj lank*更狗拼音输入法 全 :*。仁/小0"25)让“/<:血11/"武侯周边出相|二.逐步推进:如何爬取网页源文件中的具体信息。在服务器端解析html,可以在node环境屮安装cheerio模块,此模块类似于jquery 语法,可以方便快捷进行html内容解析。安装语法如下:打开命令窗口npm insial 1 cheerio;端教材研几网页布局教:当案例node jo案例舒爬虫npinstall cheerio ):前端教林研丸网貝布局教学案例no“j案例耽爬虫 一 cheerio80.22.0ceo-5«lect01.2.0i boolba
6、seqi.0.0i c$s-what82.1 .gi doutils1 5.1i nth-ch®ckq1.0.1 dom-serializerq0.1 .0i doalennttypedl .1.3 qntitiessi.1.1 htnlparser23.9.2i * dooelementtypdl .3.bi 4- dobhandl«r62.3.6|inheritse2.6.3ireddable-«tr9daq2.2.2ibuffer-ehi»s81.0.8icore-util-isfil.0.2iiearrayqi.0.6iproco«-n
7、exticka厂1.8.7istring.dccoderso.16.31在hbulider中新建:crawler58. js键入以下代码:var http二require ("http");/引用 http 模块var cheerio二require ("cheerio");/引用 cheeriovarurl= http:/cd. 58. com/chuzu/?pgttd=odl00000-0006-6648-12lf-922floodf9e5&clicktd 二4' 定义一个要爬的网页地址/获取网页文字相关内容function filt
8、orcontent (html)var $=cheerio. load(html);/ var meta二$ ("meta") ; /获取 meta 标签的数据/ console log(meta)var rooms=$(z/. listbox . listul li);/获収房源列表var roomsdata=;rooms each(function(item)var room=$(this);var room imgsrc=room. find(img). attr (,zsrcz,) ;/图片路径var roomtitle=room> find(z/. des
9、h2 a,z). text (). trim() ;/房屋标题var area二:room. find(". des room"), text() ;/面积var money二:room. find(" money b). text () ;/租金/将信息封装成一个房屋信息的对象var romminfo=img:room_imgsrc,title:roomtitle, rarea:area,money:money将房屋対象添加到roomsdata数组中roomsdata. push (romniinfo););返冋数组return roomsdata;打印数组fu
10、nction print info (rooms)rooms. foreach(function(item)var title二item, title;console. log(/z标题:"+title+"n 而积:"+item. rarea+z/n 价格:"+item. money+"n 图片:"+item. img+"n");)/*使用http对象的get方法获取url网页的内容,*第2个参数是冋调响应response的结果怎么处理*/http, get(url, function (res) 定义一个html
11、字符串var html=,'当respone由data事件触发的吋候,通过函数回调,把爬的数据组装到html字符串 中。res. on(' data', function (data) html+=data)/当response对象由end事件触发的时候,回调函数实现向控制台输出html字符串的 内容。res. on(' end', function() /console. log(html);var rooms=fi1tercontent(html);pri nttnfo(rooms);). on(,error,, function() /当触发err
12、or事件的时候,控制台输出''con sole, log ("错误")在命令窗口中执行命令运行此crawl er 58. jsd '前端教材研究网页布局教学案例node. js案例酥爬虫node crawler58. js运行结果,成功抓取相关信息:标毬:单间i押一付一锦东庭园塔子山豈号单间出租 真实价格面稅:主卧(4室)18耐价格:859图片: 标憩:单间|个人房源,2号线,地铁口200米,近春配路,牛市口,面积:次卧(h)9耐价艳:669sh: http:/imq标逖:整租i成华建设路钻石广场佳州3空2尸82平米中答装修 面税3室2厅1卫82肝价格:3200图片:http:/irnq dic.pna标题:单间i【个人出租】桐梓林地铁站精装电梯女生公寓温馨安全无杂面稅:床位价格:3ee图片:http:/ pic.png題稅榕片标面价图®积楼片单间
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《从安史之乱到五代十国》开放与革新的隋唐时代课件-1
- 大学生创业案例课件
- 房地产经纪房地产顾问销售技巧培训-69
- 《在萧红墓前的五分钟讲演》课件-1
- 2025年2月生态园区智慧办公空间租赁附加条款
- 2025一月份版航空航天销售协议技术参数分级保密制度
- 建设工程施工合同索赔管理
- 父母的房屋遗产分配协议书范例
- 房子出租安全协议责任书二零二五年
- 二零二五版第三方代收款协议范例
- 化工项目可行性研究报告
- 长者生日会策划方案
- 资产评估公司销售培训课件
- 物联网通信技术课件
- 集成电路制造技术原理与工艺第3版田丽课后参考答案
- 种子学完整分
- 听力筛查疾病演示课件
- 激光切割操作管理制度
- 保洁服务投标方案(技术标)
- 软件工程师生涯人物访谈报告
- 教科版科学六年级下册第二单元《生物的多样性》测试卷
评论
0/150
提交评论