V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
xujunhao
V2EX  ›  Python

想用 Python 做一个淘宝的降价提醒。

  •  
  •   xujunhao · 2017-03-18 10:42:04 +08:00 · 6026 次点击
    这是一个创建于 2806 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人大二狗,刚刚自学 Python ,因为看到某东的降价提醒很好用,而某宝却没有,因此想做一个降价提醒,用爬虫将他们的价格爬下来,然后做一个降价的提示,现在有几个问题:
    1 、如果做好了这个脚本,如何让他一直保持运行;
    2 、能不能实现邮箱通知或短信通知这个功能;
    这些是我昨天晚上突发奇想,还没有去具体实现,如果后期遇到问题,还望 dalao 不吝赐教。

    23 条回复    2017-03-22 18:07:58 +08:00
    jackroyal
        1
    jackroyal  
       2017-03-18 10:53:50 +08:00 via Android
    如果只是盯着个别商品,都好说,用系统的计划任务隔一段时间来执行脚本,然后在分析价格,注册个网易邮箱来发通知邮件,或者弄个微信推送也行。如果要扫描整个淘宝的商品。额,那就复杂了,要弄代理池,防止 ip 被干掉,还要多线程去跑任务。建议从手机版网站去爬,这样信息量比较小
    mianju
        2
    mianju  
       2017-03-18 10:55:26 +08:00   ❤️ 1
    1. 大概有两种思路, 可以考虑使用 flask ,一种是在 flask 里嵌入定时任务(做成网站的样子,好处是如果做上添加,可以变成网页添加,避免经常需要修改 Python 代码),另一种是使用系统的定时任务(这时候 Python 脚本就只是个确定是否降价,如果降价就发邮件的程序)
    2. 使用 Flask-Mail ,短信的话只能花钱买 api 接口(当然也有免费的,我记得有个 api 是每天免费 5 条,应该做够)
    tumbzzc
        3
    tumbzzc  
       2017-03-18 11:02:12 +08:00
    @mianju 说远了,楼主刚学 Python 的话,不建议就接触 web 框架,还是从一个脚本写起吧
    tumbzzc
        4
    tumbzzc  
       2017-03-18 11:07:59 +08:00
    也许可以分析一下惠惠购物助手,直接用惠惠购物助手的信息
    staticor
        5
    staticor  
       2017-03-18 11:20:53 +08:00
    一直保持运行 -> 可以换种方式, 每隔 delta 秒运行一次.

    像 crontab 这种定时任务管理, 或者 windows 自带的计划任务帮助你实现自动化执行的要求;

    然后爬虫提取 sku_id price timestamp 这些属性, 数据可以用 sqlite 或者 mysql 等熟悉的方式存储. 甚至本地的 tsv 文件都可以.

    提醒的话就邮件比较方便, 短信涉及到收费问题.
    发邮件工具 Python 的 SMTP 模块 (smtplib) 就能实现了.

    小菜鸟暂时也只能想到这些了, 供参考.
    echovaio
        6
    echovaio  
       2017-03-18 11:23:15 +08:00 via Android
    写个简单的脚本,然后 crontab 就行了,我就是这么干的
    firefox12
        7
    firefox12  
       2017-03-18 12:31:34 +08:00 via iPhone
    最大的问题是怎么反 反爬虫
    airqj
        8
    airqj  
       2017-03-18 12:33:55 +08:00 via Android
    如果商品足够多
    还没等爬虫爬下来东西已经被抢光了……
    misaka19000
        9
    misaka19000  
       2017-03-18 13:13:58 +08:00 via Android
    如果只是单个商品,那就很简单了, Python 写个死循环,每隔一段时间执行一次就可以,消息发送可选方糖。如果是所有商品,那问题就好复杂了。
    zhaozdi
        10
    zhaozdi  
       2017-03-18 13:39:17 +08:00
    只是想单纯的吐槽一下楼主的头像,另外楼上说的方糖是这个: http://sc.ftqq.com/
    laoyuan
        11
    laoyuan  
       2017-03-18 14:03:14 +08:00
    一点一点来,总之我保证这是一个大坑
    ty89
        12
    ty89  
       2017-03-18 14:21:05 +08:00
    @laoyuan
    同意
    笑而不语
    jwenwang
        13
    jwenwang  
       2017-03-18 15:02:53 +08:00 via iPhone
    即刻 app 好像可以做到
    blessyou
        14
    blessyou  
       2017-03-18 15:08:27 +08:00 via iPhone
    你提的这两个问题都不是大问题,坑的在其他地方。
    lygmqkl
        15
    lygmqkl  
       2017-03-18 15:40:08 +08:00 via iPhone
    反扒是关键 其他无所谓
    gjh
        16
    gjh  
       2017-03-18 18:07:10 +08:00
    chrome 市场里很多比价插件 惠惠等,还要造轮子的必要吗?
    grimpil
        17
    grimpil  
       2017-03-18 18:43:06 +08:00 via Android
    第一个问题很简单,谷歌一下即可,第二个问题用 server 酱,也就是楼上提的方糖,微信提醒,用起来很方便
    aabbccli
        18
    aabbccli  
       2017-03-18 21:36:10 +08:00
    淘宝上面不下几百亿的商品数据,你一个月能爬完一遍不?一个月的更新周期,降价提醒还有意义么?
    est
        19
    est  
       2017-03-18 22:16:09 +08:00
    现在的电商网站都学尖了。

    不降价,但是有满减或者组合降价的活动。

    光监控价格没用。
    levon
        20
    levon  
       2017-03-18 23:02:29 +08:00
    无解,淘宝的价格不是这么好抓取的,少数可用,多数恨麻烦
    VYSE
        21
    VYSE  
       2017-03-19 01:03:10 +08:00
    你得盯鹊桥和隐藏优惠券
    bozong
        22
    bozong  
       2017-03-19 02:29:40 +08:00 via iPhone
    部分商品监控还好。大量的,说句实话,这个还是甭想了,那不是你能做的。
    pcdRob
        23
    pcdRob  
       2017-03-22 18:07:58 +08:00
    看你要监控的数量 大量的话 这个坑有点大。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   931 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:37 · PVG 04:37 · LAX 12:37 · JFK 15:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.