美文网首页爬虫
bs4>>美团网

bs4>>美团网

作者: 郭祺迦 | 来源:发表于2018-09-27 12:56 被阅读0次

#使用面向对象的方式去爬取

import json

import urllib.request

import urllib.parse

class  MeiTuan(object):

    def __init__(self,start_page,end_page,q):

        self.start_page = start_page

        self.end_page = end_page

        self.q = q

        self.url = 'http://apimobile.meituan.com/group/v4/poi/pcsearch/1?'

        self.temp=[]

    def get_request(self,page):

        offset = (page-1) * 32

        data = {

            'uuid': '9b200d0955c947758b40.1537682343.1.0.0',

            'userid': '-1',

            'limit': '32',

            'offset': str(offset),

            'cateId': '-1',

            'q':self.q

        }

        headers = {

            'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'

        }

        data = urllib.parse.urlencode(data)

        url = self.url + data

        print(url)

        request = urllib.request.Request(url=url,headers=headers)

        return request

    #获得响应的对象

    def get_response(self,req):

        res = urllib.request.urlopen(req)

        return res

    #获得数据,提取数据

    def get_content(self,res):

        content = res.read().decode("utf8")

        datas = json.loads(content)

        data = datas['data']['searchResult']

        for i in data:

            # print(i)

            jbmz = i['title']#酒吧名字

            jbimg = i['imageUrl']#酒吧图片

            jbdd = i['address']#酒吧地点

            pjxf = i['lowestprice']#酒吧人均消费

            pj = i['avgscore']#评价

            yhlist = []  # 优惠列表

            try:

                for j in i['deals']:

                    tcmz = j['title']#套餐名字

                    yhlist.append(tcmz)

                    tcjg = j['price']#套餐价格

                    yhlist.append(tcjg)

                    tcyj = j['value']#套餐原价

                    yhlist.append(tcyj)

                    tcys = j['sales']#已经售卖

                    yhlist.append(tcys)

            except:

                yhlist.append("没有优惠套餐")

            self.temp.extend([jbmz,jbimg,jbdd,pjxf,pj,yhlist])

        # return self.temp

    def run(self):

        for page in range(self.start_page,self.end_page+1):

            # 获取请求对象

            request = self.get_request(page)

            #获得响应的的对象

            response = self.get_response(request)

            #获取请求的数据

            data = self.get_content(response)

        string = str(self.temp)

        # with open('美团.txt','w',encoding='utf8') as fp:

        #         #     fp.write(string)

        #         # print('ok')

        print(string)

def main():

    q = input("输入搜索的关键字:")

    start_page = int(input("请输入起始页码:"))

    end_page = int(input("请输入终止页码:"))

    meituan = MeiTuan(start_page,end_page,q)

    meituan.run()

if __name__ == '__main__':

    main()

相关文章

  • bs4>>美团网

    #使用面向对象的方式去爬取 import json import urllib.request import ur...

  • Susan-美团会员体系

    美团于2010年3月4日正式上线。2013年11月,美团外卖上线。2015年10月8日,美团网与大众点评网合并...

  • 20181204 社区拼团模式

    社区拼团,又名社区团购 每日优鲜、拼多多、美菜网、中商惠民、美团网、京东等“传统”互联网企业;钱大妈等线下社区便利...

  • 【美团网项目】1.项目介绍

    高仿美团网全栈实战 技术栈:Vue全家桶 + SSR + Koa2 全栈开发美团网 vue.js 全家桶系列,包含...

  • Python-爬取带有验证码的网站

    爬取古诗文网 import requestsfrom bs4 import BeautifulSoupimport...

  • 打卡记(0322)Uber在吉隆坡

    昨天,美团网突然宣布开始做网约车业务啦。 首次使用美团打车的用户都能免15元。我前天刚用的滴答打车,免10元。原来...

  • 体验【美团】app

    美团网的全称为“北京三快在线科技有限公司”,是2010年3月4日成立的团购网站。美团网有着“吃喝玩乐全都有”...

  • 深入分析美团,糯米(三)

    在之前两篇笼统的分析后,来看看他们两家公司是如何做的吧,首先聊聊美团,美团下辖了4个独立业务部门,美团网,美团外卖...

  • 美团打车40亿补贴,每天10单获600元保底,滴滴垄断局面恐被终

    美团老板王兴也是个说干就干有魄力的人,此前传的沸沸扬扬的美团打车业务,现在上线了。根据凤凰网的报道,美团打车今天正...

  • 美团打车的蝴蝶效应

    2017年12月,美团成立出行事业部正式进军网约车市场,接着美团打车在上海和南京上线。2018年9月上市前夕美团明...

网友评论

    本文标题:bs4>>美团网

    本文链接:https://www.haomeiwen.com/subject/sfreoftx.html