code: def __hosting_wechat_img(self, content_info, hosting_callback):
          
          assert callable(hosting_callback)
  
          content_img_list = content_info.pop("content_img_list")
          content_html = content_info.pop("content_html")
          for idx, img_url in enumerate(content_img_list):
              hosting_img_url = hosting_callback(img_url)
              if not hosting_img_url:
                  # todo 定义标准异常
                  raise Exception()
              content_img_list[idx] = hosting_img_url
              content_html = content_html.replace(img_url, hosting_img_url)
  
          return dict(content_img_list=content_img_list, content_html=content_html)
docs: 将微信明细中图片托管到云端，同时将html页面中的对应图片替换
  
          Parameters
          ----------
          content_info : dict 微信文章明细字典
              {
                  'content_img_list': [], # 从微信文章解析出的原始图片列表
                  'content_html': '', # 从微信文章解析出文章的内容
              }
          hosting_callback : callable
              托管回调函数，传入单个图片链接，返回托管后的图片链接
  
          Returns
          -------
          dict
              {
                  'content_img_list': '', # 托管后的图片列表
                  'content_html': '',  # 图片链接为托管后的图片链接内容
              }