• 点赞。
    好多人包括我,只是工具或者框架的使用者,没有深究原理。原因很多,或者自身能力限制没人带,或者公司平台限制。
    设计模式之类的基本功,一问就跪。
    不想混成狗了。
    @ycwdaaaa 有没有深入的开发基础点推荐下,谢谢。

  • 没有比这个更温暖的了。 at 2016年04月20日

    今天也收到人生的第一个微信打赏 5RMB,心里暖暖的。感谢 **_xy。

  • Python 网络爬虫 (二) at 2016年04月15日

    贡献下自己写的并发抓取 bilibili 闪图保存本地的爬虫,用了 requests 和 gevent 库

    # coding: utf-8
    
    import json
    import time
    import os
    
    import requests
    
    from gevent import monkey
    from gevent.pool import Pool
    
    monkey.patch_socket()
    
    
    # 下载文件,保存本地
    def get_image(image_url, image_name):
        file_path = os.path.join("bilibili", image_name + ".gif")
        with open(file_path, "wb") as image:
            image.write(requests.get(image_url, timeout=20).content)
    
    
    # 获取下载链接和文件名
    def get_image_info(bll_url):
        r = requests.get(bll_url, timeout=20)
        dict_ = json.loads(r.content)["fix"]
        return [(i["icon"], i["title"]) for i in dict_]
    
    
    def download_asynchronous(url):
        time_start = time.time()
        if not os.path.exists("bilibili"):
            os.mkdir("bilibili")
    
        # 限制并发数
        pool = Pool(10)
        image_info = get_image_info(url)
        [pool.spawn(get_image, *(i)) for i in image_info]
        pool.join(timeout=30)
        print 'finished , used {0} s, number is {1}'.format(int(time.time() - time_start), len(image_info))
        print '-------------------------------------------------'
    
    if __name__ == "__main__":
        url = "http://www.bilibili.com/index/index-icon.json"
        download_asynchronous(url)
    
  • 专项测试之 SQL 调优 at 2016年04月14日

    赞,很实用。

  • 分层测试重构之接口层 at 2016年03月03日

    #8 楼 @sigma 使用 python 的话,推荐使用库ddt, 就是使用了装饰器。
    测试数据是保存在 sqlite3 中,可使用库Flask-restlss封装成接口,可直接调用接口存取测试数据。

    1. 规范:规范测试流程,并得到实施。
    2. 文档:需求文档和开发文档
    3. 持续集成:比如自动打包之类,节省重复工作的时间