CNode

用Node.js写的爬取淘宝、美团等平台上电影票价的项目

分享
LLiangCY发布于11 年前最后回复11 年前21 回复12291 浏览0 收藏

本人Node新手,最近接触到request、cheerio模块,就想着做一个爬虫项目。因为经常去电影院看电影,每次买票都要去淘宝、美团等平台上对比一下票价,就想着能不能自己写个爬虫获取这些网站上的电影票价,放到一个页面里展示,方便的找到最低的票价。 然后就自己动手写了这样一个项目 GitHub地址,目前已经获取到了淘宝、百度糯米、美团的票价信息。 因为本人在南京,所以目前实现的就是获取南京市各电影院的票价信息,项目利用request、cheerio爬取网页,MongoDB存储数据,express+ejs做页面展示。

应用截图:

  • 电影 movies.jpg

  • 影院(因为各平台上电影院的名称都不一致,所以影院信息只能自己手动输入,表格中的字段是可以编辑的) cinemas.jpg

  • 票价 tickets.jpg

遇到的一些问题:

  1. 爬取淘宝电影时,有时候请求频繁会返回输入验证码的页面,就没法获取票价信息,目前是设置了每请求一次后隔一段时间再进行下一次请求,降低频率,但是这样还是不可靠
  2. 美团的网页上的票价全部都是图片,没法获取数值,所以目前只能获取这个票价区域的html进行展示,这样的问题就是没法进行票价比较(现已解决)
查看回复

回复 (21)

M
magicdawn#1·11 年前

美团的网页上的票价全部都是图片

会玩

S
SoaringTiger#2·11 年前

😊 美团和大众点评有开放api的,有没有电影票的不清楚,你可以看看

G
garfieldzf8#3·11 年前

太棒了。 你是输入电影院名称然后搜索对应的电影名称?

L
LiangCY#4·11 年前
引用 garfieldzf8太棒了。 你是输入电影院名称然后搜索对应的电影名称?

@garfieldzf8 我是在电影页面选择一个电影,然后跳转到另外一个页面,列出所有电影院和这个电影院的最低票价,就像这样 QQ截图20151127174242.png

H
halfblood#6·11 年前

赞一个……

A
alsotang#7·11 年前

好东西啊

J
jiangli373#8·11 年前

http://i.meituan.com/s/?mtt=1.s%2Fdefault.0.0.iifsrj8t
可以使用移动端的页面抓取 untitled1.png

L
LiangCY#9·11 年前
引用 jiangli373http://i.meituan.com/s/?mtt=1.s%2Fdefault.0.0.iifsrj8t 可以使用移动端的页面抓取

@jiangli373 这倒是没想到,但这个似乎是兑换券,不是在线选座的那种,不过确实是个不错的思路! QQ截图20151221184436.jpg

L
longFeiLi#10·11 年前

不错。支持一下。我也要搞个深圳的、、、

G
g8up#11·11 年前

拦截验证码转发到打码平台~

A
a316523235#12·11 年前

比我的抓小说有意思些, 看看你的

L
LiangCY#13·11 年前

2015.12.23更新

  • 微票电影网页改版,似乎已全部移到移动端,原先的爬取方法失效,放弃微票电影的爬取。
  • 根据@jiangli373 的提议,美团票价改为从猫眼移动端网页爬取,但是移动网页上的HTML部分仍然不是直接通过数字展示。通过分析HTML与CSS,通过偏移距离和宽度判断,成功从HTML中提取出票价数字。
  • 首页添加场次,并按照场次排序。 tickets.jpg
S
stray#14·11 年前

node app.js运行网站 node scraper\index.js开启爬虫 直接做成一个node启动是否更好一些?有些应用程序部署平台一个应用只允许启动一个node index.js

B
bearhasdream#16·11 年前

QQ截图20151226210747.png 问下楼主,这个url是怎么得到的. 怎么知道参数的名字.

L
LiangCY#17·11 年前

我是用chrome,访问移动端网页,然后看网络请求 QQ截图20151227143914.jpg

F
FrancisKong#18·11 年前

我最近也在做这么个项目,不过身为重度拖延症患者进度很慢,不知道能否将你的代码用到我的项目中。 关于美团的API你可以看下 猫眼的API-简书,希望能够对你有所帮助。

M
monolyvip#20·11 年前

@LiangCY 最近也在做这种项目,指导一下我呗

来自炫酷的 CNodeMD

L
LiangCY#21·11 年前
引用 monolyvip@LiangCY 最近也在做这种项目,指导一下我呗 来自炫酷的 CNodeMD

@monolyvip 指导谈不上,我也是新手,可以合作

参与回复
登录后即可参与回复。登录