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

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

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

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

    @notreami 换个时间点访问吧

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

    等有空我来做一个
        14
    ruter8   2017-05-04 23:15:59 +08:00
    @bigzhu 我也是这么说的 23333
        15
    kamen   2017-05-04 23:32:28 +08:00 via Android
    一个都没有
        16
    taresky   2017-05-04 23:45:56 +08:00 via iPhone
    @bigzhu 记得来发帖啊
        17
    baox2   2017-05-05 02:01:02 +08:00
    @bigzhu 哈哈 等你哟
        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]))
        19
    ITOutsider   2017-05-06 13:57:59 +08:00 via iPhone
    亲眼看看这些店的厨房我就不想再吃了
        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
        21
    Antidictator   2017-05-07 09:46:26 +08:00 via Android
    @notreami gh 设置进 pac 就好了
        22
    baox2   2017-05-07 13:23:57 +08:00
    @bigzhu 棒棒的 已经收藏
        23
    newworld   2017-05-07 14:29:39 +08:00
    @bigzhu #20 棒棒的 有没有开发支付系统的经验
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3814 人在线   最高记录 5043   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 18ms · UTC 07:05 · PVG 15:05 · LAX 00:05 · JFK 03:05
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1