V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
SaulLawliet
V2EX  ›  分享创造

查询饿了么品牌馆中有哪些是 <真·五折>

  •  
  •   SaulLawliet ·
    SaulLawliet · 2017-05-04 12:16:38 +08:00 · 4272 次点击
    这是一个创建于 2548 天前的主题,其中的信息可能已经有所发展或是发生改变。
    根据多年的订餐经验, 偶尔会有一些真正打 5 折的店
    有了它, 就再也不必每次翻啊翻的找了

    第 1 条附言  ·  2017-05-05 11:05:24 +08:00
    简单的修改了一下, 现在不会"什么都没有打印出来了", 因为打印了页码信息 ;)
    23 条回复    2017-05-07 14:29:39 +08:00
    jsjjdzg
        1
    jsjjdzg  
       2017-05-04 15:20:26 +08:00   ❤️ 4
    开始什么都没打印出来,我还以为代码有问题,一行一行看。。。然后,知道真相的我眼泪掉下来 ,周围并没有真打折的。。。
    notreami
        2
    notreami  
       2017-05-04 15:31:42 +08:00   ❤️ 1
    友情提醒,想看代码,要翻墙(点一下等 5 分钟没下文的经验)
    livewithsnow
        3
    livewithsnow  
       2017-05-04 15:32:33 +08:00
    哈哈哈,我跑了一下也是几秒后什么都没有,那就是真没有了
    esophagus
        4
    esophagus  
       2017-05-04 15:37:30 +08:00
    LZ,俺也张江的握爪~
    vinew
        5
    vinew  
       2017-05-04 15:47:07 +08:00 via iPhone
    @notreami 还以为是我打开方式不对🙈
    SaulLawliet
        6
    SaulLawliet  
    OP
       2017-05-04 15:50:04 +08:00
    @jsjjdzg @livewithsnow 每次点餐之前跑一下, 说不定哪天就有了

    @notreami 换个时间点访问吧

    @esophagus 握爪, 但我不是张江的, 那是我随意找的位置 ;)
    Troevil
        7
    Troevil  
       2017-05-04 15:53:10 +08:00
    什么都没打印出来....
    iVeego
        8
    iVeego  
       2017-05-04 15:59:40 +08:00
    有两家,谢谢楼主的脚本。
    regiondavid
        9
    regiondavid  
       2017-05-04 18:04:50 +08:00
    一家也没有,心塞。。。
    jtacm
        10
    jtacm  
       2017-05-04 18:11:39 +08:00
    “# 根据经验 只有所有折扣都是 5 折 才是真正的打折” , 这是什么原理?? 求详解。
    eicyan
        11
    eicyan  
       2017-05-04 18:14:39 +08:00
    # 根据经验 所有折扣都是 5 折 是假打折
    # 根据经验 有只其中一两款打折,是真打折
    SaulLawliet
        12
    SaulLawliet  
    OP
       2017-05-04 19:14:07 +08:00
    @jtacm 无原理, 就是平时点餐的经验, 真打折的那种一般都是满 40-20 满 60-30 的
    bigzhu
        13
    bigzhu  
       2017-05-04 22:59:25 +08:00 via Android   ❤️ 1
    感觉可以再封装一下,弄成个可以直接访问的 web

    等有空我来做一个
    ruter8
        14
    ruter8  
       2017-05-04 23:15:59 +08:00
    @bigzhu 我也是这么说的 23333
    kamen
        15
    kamen  
       2017-05-04 23:32:28 +08:00 via Android
    一个都没有
    taresky
        16
    taresky  
       2017-05-04 23:45:56 +08:00 via iPhone
    @bigzhu 记得来发帖啊
    baox2
        17
    baox2  
       2017-05-05 02:01:02 +08:00
    @bigzhu 哈哈 等你哟
    losetear
        18
    losetear  
       2017-05-05 10:26:31 +08:00
    简单改了下,做了个按折扣排序:
    #for i in range(5):
    url = URL_TEMPLATE % (20)
    data = json.loads(requests.get(url).text)
    shops = list({})
    for restaurant in data:
    id = restaurant["id"]
    name = restaurant["name"]
    for activity in restaurant["activities"]:
    if "type" in activity and activity["type"] == 102: # 102 表示满减
    tips = activity["tips"]
    flag = True
    lastzk = 999
    for couple in zip(*[iter(re.findall(r'\d+', tips))]*2):
    x = float(couple[0])
    y = float(couple[1])
    zk = (x-y)/x
    if lastzk > zk:
    lastzk = zk
    shop = [id,name.replace(u'\u2219',u''),tips,lastzk]
    #print("%d %s %s %s" % (id, name, zk,tips))
    #print("%d %s %s %s" % (shop[0], shop[1], shop[2],shop[3]))
    shops.append(shop)
    shops.sort(key=lambda shop: shop[3])
    for shop in shops:
    print("%d %s %s %s" % (shop[0], shop[1], shop[2], shop[3]))
    ITOutsider
        19
    ITOutsider  
       2017-05-06 13:57:59 +08:00 via iPhone
    亲眼看看这些店的厨房我就不想再吃了
    bigzhu
        20
    bigzhu  
       2017-05-06 19:10:36 +08:00   ❤️ 2
    @ruter8 @taresky @baox2

    和以上同学汇报如下:

    今天看完 <摔跤吧!爸爸> 回来后, 愉快的弄了一下

    为了让 chrome 能用浏览器取到 location, 还特意去注了 https. 位置信息取到没问题.

    把楼主的代码封装成 web api, 把返回的数据按列表显示. 根据 id 贴心的加上 link, 可以直接点击直接访问商家. 一切都很顺利.

    然而都开发完毕后, 有两个不幸的消息:

    1. 我附近一家打折店都没有
    2. 开发前端时调了 10 多次以后, 430 了!

    饿了么的反爬机制还是不错的, 反正我服务器 ip 被封的死死的, 似乎都进黑名单了吧.

    所以这个问题解决前, 不可能封装成 web 来调用的, 还是自个儿用楼主的 python 脚本跑跑吧.

    一概 430 错误 https://eleme.lorstone.com
    Antidictator
        21
    Antidictator  
       2017-05-07 09:46:26 +08:00 via Android
    @notreami gh 设置进 pac 就好了
    baox2
        22
    baox2  
       2017-05-07 13:23:57 +08:00
    @bigzhu 棒棒的 已经收藏
    newworld
        23
    newworld  
       2017-05-07 14:29:39 +08:00
    @bigzhu #20 棒棒的 有没有开发支付系统的经验
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5140 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 09:40 · PVG 17:40 · LAX 02:40 · JFK 05:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.