def get_bing(): """ 获取必应图片地址 :return: """ data = {'format': 'js', 'idx': 0, 'n': 1} try: response = HttpUtil.get_json( url='http://cn.bing.com/HPImageArchive.aspx', data=data) logging.debug(response) except Exception as e: logging.error("网络请求错误:", e) time.sleep(120) get_bing() images = response["images"] url = "http://cn.bing.com" + images[0]["url"].split("&")[0] # 拼接目录路径 directory = os.path.join(Constants.APP_DIRECTORY, "images") image_name = url.split("=")[1] # 拼接文件绝对路径 image_path = os.path.join(directory, image_name) # 下载图片 HttpUtil.download_file(url, directory, image_name) # 分割文件名和后缀,如果后缀不为bmp if os.path.splitext(image_name)[1] != "bmp": # 转为bmp image_path = FileUtil.image_to_bmp(image_path)
def download_chromedriver(): """ 下载chrome驱动 http://chromedriver.storage.googleapis.com/index.html :return: """ # 获取版本号列表 url = "http://chromedriver.storage.googleapis.com/" result = BeautifulSoup(HttpUtil.get(url, { "delimiter": "/", "prefix": "" }).text, features="lxml") prefix = result.find_all("prefix") # 过滤 # info = [s.extract() for s in prefix('prefix')] local_version = get_local_version(prefix) # 获取版本下面的文件列表 driver_list = BeautifulSoup(HttpUtil.get(url, { "delimiter": "/", "prefix": local_version }).text, features="lxml") filename_list = driver_list.find_all("key") for s in filename_list: s = s.text # 如果在文件名中找到系统平台名称 if s.find(sys.platform) != -1: filename = s[len(local_version):] # 下载文件 HttpUtil.download_file(url + s, None, filename) FileUtil.zip_extract(filename, None)
def download_taobao_chromedriver(): """ 下载淘宝镜像chromedriver http://npm.taobao.org/mirrors/chromedriver :return: """ # 获取版本号列表 url = "http://npm.taobao.org/mirrors/chromedriver/" result = BeautifulSoup(HttpUtil.get(url).text, features="lxml") prefix = result.find("pre").find_all("a") # 过滤 # info = [s.extract() for s in prefix('prefix')] local_version_url = url + get_local_version(prefix) # 获取版本下面的文件列表 driver_list = BeautifulSoup(HttpUtil.get(local_version_url).text, features="lxml") filename_list = driver_list.find_all("a") for s in filename_list: s = s.text # 如果在文件名中找到系统平台名称 if s.find(sys.platform) != -1: # 下载文件 HttpUtil.download_file(local_version_url + s, None, s) FileUtil.zip_extract(s, None)
def get_360_image(images): for image in images: url = image["url"] # 拼接目录路径 directory = os.path.join(Constants.APP_DIRECTORY, "images") # 如果目录不存在则创建 if not os.path.exists(directory): os.makedirs(directory) urls = url.split("/") # 拼接文件绝对路径 image_path = os.path.join(directory, urls[len(urls) - 1]) HttpUtil.download_file(image_path, url)