通过搜索获取酒店ID
1.爬虫地址:https://hotels.ctrip.com/hotels/list?city=1&checkin=2021/09/26&checkout=2021/09/27&optionId=1&optionType=City&directSearch=0&display=%E5%8C%97%E4%BA%AC&crn=1&adult=1&children=0&searchBoxArg=t&travelPurpose=0&ctm_ref=ix_sb_dl&domestic=1& 地址字段分析: checkin:起始入住酒店时间 checkout:酒店结束入住时间 display:酒店地区,单位为:省(市,直辖市) 其余字段均为固定,或为其他可省,或为调整第几页数据,自行参悟即可,如没有特殊要求,以上字段够用,其余固定 提示:不登录情况下,能拿到12个酒店数据,登录情况下翻页即可,自行摸索翻页字段
2.爬取该地址,拿到json数据,json数据在此地址里,如用易语言开发,用网页访问对象。即可得到,不需要cookie和header。如需要登录,把cookie带上即可 易语言方法举例爬虫,简易写,看懂方法就行: (1)源码 = 网页访问对象(爬虫地址) (2)源码 = 清除所有空白字符(源码)。空白字符:字符(13),字符(10),换行符,tab (3)源码 = 取出中间文本(源码,” window.IBU_HOTEL=”,”; __webpack_public_path__=”) (4)拿到json数据后,用类:类_json进行解析。酒店在json数据中对象名称为:initData下的firstPageList对象,酒店在hotelList对象下的list数组,这里自行json解析工具详细查看。 (5)取第一个为例:以丽呈秋酒店为例,这个酒店可以取到酒店ID为:24060797。酒店ID在酒店数组下的hotelId字段。
3.到此第一步爬虫结束。拿到一个页面的12个酒店ID。如需更多,请登录进行翻页,这一步只是拿到酒店的ID。第二步才是拿到信息,如没有其他方法拿到酒店ID,此方法是最方便的
通过搜索获取酒店信息
1.爬虫地址:https://hotels.ctrip.com/hotels/detail/?hotelId=24060797&checkIn=2021-09-26&checkOut=2021-09-27&cityId=1&minprice=&mincurr=&adult=1&children=0&ages=&crn=1&curr=&fgt=&stand=&stdcode=&hpaopts=&mproom=&ouid=&shoppingid=&roomkey=&highprice=-1&lowprice=0&showtotalamt=&hotelUniqueKey= 地址字段分析: checkin:起始入住酒店时间 checkout:酒店结束入住时间 hotelId:酒店ID 其他字段没有细看,均为固定或可省,如没有特殊要求,可忽略,直接更改上边分析字段即可 提示:此爬虫地址无需登录
2.爬取该地址,拿到json数据,json数据在此地址里,如用易语言开发,用网页访问对象。即可得到,不需要cookie和header。如需要登录,把cookie带上即可 易语言方法举例爬虫,简易写,看懂方法就行: (1)源码 = 网页访问对象(爬虫地址) (2)源码 = 清除所有空白字符(源码)。空白字符:字符(13),字符(10),换行符,tab (3)源码 = 取出中间文本(源码,” window.IBU_HOTEL=”,”; __webpack_public_path__=”) 酒店信息在json路径:initData.staticHotelInfo。这里不说明哪个是对象了,json解析工具调一下,跟着路径找,会更详细,这里边包含酒店所有信息:酒店名称,酒店注册地址,所在地址,开业时间,装修时间,剩余客房,联系电话,是否携程合作商,酒店图片,营业执照,酒店主题,酒店提供什么服务,可入住时间,退房时间,儿童加床,儿童服务,提供早餐,菜单类型,是否提供停车场,是否可带宠物,付款方式,办理入住需求年龄
3.到此爬虫结束,根据酒店ID进行爬取信息,批量爬取注意IP防封
微信扫描下方的二维码阅读本文

