从Bing中国上下载背景图片,bing中国背景图片,改用urllib2,以支


改用urllib2,以支持proxy

使用ConfigParser将相关信息写入配置文件

用正则表达式解析url

#!/usr/bin/python# coding=utf-8## filename: getCNBingBackground.pyimport  urllib2import ConfigParserimport re""" Change log:    1. modify: Tim Wang        1.1. 改用urllib2,以支持proxy        1.2. 使用ConfigParser将相关信息写入配置文件        1.3. 用正则表达式解析url"""cfgparser = ConfigParser.ConfigParser()cfgparser.read("config.ini")enable_proxy = cfgparser.getboolean("basic", "enable_proxy")proxy_setting = dict(cfgparser.items("proxy")) if enable_proxy else {}proxy_handler = urllib2.ProxyHandler(proxy_setting)opener = urllib2.build_opener(proxy_handler)urllib2.install_opener (opener)cnbing = dict(cfgparser.items("cnbing"))cnbing["patt"] = re.compile(cnbing["regex"])def weburls(weburl, patt):    url = patt.search(urllib2.urlopen(weburl).read())\\        .groupdict().get("url")    if not url:        print "解析标签失败,可能页面格式已经改变!"    else:        return urldef downLoadImage(url):    if url.startswith("http"):        picName = url.split("/")[-1]        print "准备下载:" + url        with open(picName, "wb") as pic:            pic.write(urllib2.urlopen(url).read())        print "保存 " + picName + " 在当前路径下!"    else:        print url + " 不是一个正确的图片URL地址!"if __name__ == '__main__':    downLoadImage(weburls(cnbing["url"], cnbing["patt"]))#该片段来自于http://byrx.net

评论关闭