def get_article_detail(text, del_qqmusic=True, del_voice=True):
        """根据微信文章的临时链接获取明细

        1. 获取文本中所有的图片链接列表
        2. 获取微信文章的html内容页面(去除标题等信息)

        Parameters
        ----------
        text : str or unicode
            一篇微信文章的文本
        del_qqmusic: bool
            删除文章中的qq音乐
        del_voice: bool
            删除文章中的语音内容

        Returns
        -------
        dict
        {
            'content_html': str # 微信文本内容
            'content_img_list': list[img_url1, img_url2, ...] # 微信文本中图片列表

        }
        """
        # 1. 获取微信文本content
        html_obj = BeautifulSoup(text, "lxml") # [STATE] html_obj = <!DOCTYPE html><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><meta content="IE=edge" http-equiv="X-UA-Compatible"/><meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,viewport-fit=cover" name="viewport"/><meta content="yes" name="apple-mobile-web-app-capable"/><meta content="black" name="apple-mobile-web-app-status-bar-style"/><meta content="telephone=no" name="format-detection"/> [/STATE]
        content_text = html_obj.find('div', {'class': 'rich_media_content', 'id': 'js_content'}) # [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

<qqmusic albumid="001k4Q4m2RYxCy" albumurl="https://y.gtimg.cn/music/photo_new/T002R68x68M000001k4Q4m2RYxCy.jpg" audiourl="http://ws.stream.qqmusic.qq.com/C100002VMURX2Ebx6y.m4a?fromtag=46" class="res_iframe qqmusic_iframe js_editor_qqmusic" frameborder="0" jumpurlkey="" mid="002VMURX2Ebx6y" music_name="柔如彩虹" musicid="635327" musictype="1" otherid="002VMURX2Ebx6y" play_length="221" scrolling="no" singer="Richard Clayderman - 理查德.克莱德曼钢琴曲精选" src="/cgi-bin/readtemplate?t=tmpl/qqmusic_tmpl&singer=Richard%20Clayderman%20-%20%E7%90%86%E6%9F%A5%E5%BE%B7.%E5%85%8B%E8%8E%B1%E5%BE%B7%E6%9B%BC%E9%92%A2%E7%90%B4%E6%9B%B2%E7%B2%BE%E9%80%89&music_name=%E6%9F%94%E5%A6%82%E5%BD%A9%E8%99%B9&albumurl=https%3A%2F%2Fy.gtimg.cn%2Fmusic%2Fphoto_new%2FT002R68x68M000001k4Q4m2RYxCy.jpg&musictype=1"></qqmusic>

欢迎分享到朋友圈~

 [/STATE]

        # 2. 删除部分标签
        if del_qqmusic:
            qqmusic = content_text.find_all('qqmusic') or [] # [STATE] qqmusic = [<qqmusic albumid="001k4Q4m2RYxCy" albumurl="https://y.gtimg.cn/music/photo_new/T002R68x68M000001k4Q4m2RYxCy.jpg" audiourl="http://ws.stream.qqmusic.qq.com/C100002VMURX2Ebx6y.m4a?fromtag=46" class="res_iframe qqmusic_iframe js_editor_qqmusic" frameborder="0" jumpurlkey="" mid="002VMURX2Ebx6y" music_name="柔如彩虹" musicid="635327" musictype="1" otherid="002VMURX2Ebx6y" play_length="221" scrolling="no" singer="Richard Clayderman - 理查德.克莱德曼钢琴曲精选" src="/cgi-bin/readtemplate?t=tmpl/qqmusic_tmpl&singer=Richard%20Clayderman%20-%20%E7%90%86%E6%9F%A5%E5%BE%B7.%E5%85%8B%E8%8E%B1%E5%BE%B7%E6%9B%BC%E9%92%A2%E7%90%B4%E6%9B%B2%E7%B2%BE%E9%80%89&music_name=%E6%9F%94%E5%A6%82%E5%BD%A9%E8%99%B9&albumurl=https%3A%2F%2Fy.gtimg.cn%2Fmusic%2Fphoto_new%2FT002R68x68M000001k4Q4m2RYxCy.jpg&musictype=1"></qqmusic>] [/STATE]
            for music in qqmusic: #  [STATE] music = <qqmusic albumid="001k4Q4m2RYxCy" albumurl="https://y.gtimg.cn/music/photo_new/T002R68x68M000001k4Q4m2RYxCy.jpg" audiourl="http://ws.stream.qqmusic.qq.com/C100002VMURX2Ebx6y.m4a?fromtag=46" class="res_iframe qqmusic_iframe js_editor_qqmusic" frameborder="0" jumpurlkey="" mid="002VMURX2Ebx6y" music_name="柔如彩虹" musicid="635327" musictype="1" otherid="002VMURX2Ebx6y" play_length="221" scrolling="no" singer="Richard Clayderman - 理查德.克莱德曼钢琴曲精选" src="/cgi-bin/readtemplate?t=tmpl/qqmusic_tmpl&singer=Richard%20Clayderman%20-%20%E7%90%86%E6%9F%A5%E5%BE%B7.%E5%85%8B%E8%8E%B1%E5%BE%B7%E6%9B%BC%E9%92%A2%E7%90%B4%E6%9B%B2%E7%B2%BE%E9%80%89&music_name=%E6%9F%94%E5%A6%82%E5%BD%A9%E8%99%B9&albumurl=https%3A%2F%2Fy.gtimg.cn%2Fmusic%2Fphoto_new%2FT002R68x68M000001k4Q4m2RYxCy.jpg&musictype=1"></qqmusic> [/STATE]
                music.parent.decompose() # [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] # [STATE] qqmusic = REPR FAILED [/STATE] # [STATE] music = REPR FAILED [/STATE]

        if del_voice:
            # voice是一个p标签下的mpvoice标签以及class为'js_audio_frame db'的span构成，所以将父标签删除
            voices = content_text.find_all('mpvoice') or [] # [STATE] voices = [] [/STATE]
            for voice in voices:
                voice.parent.decompose()

        # 3. 获取所有的图片 [img标签，和style中的background-image]
        all_img_set = set() # [STATE] all_img_set = set() [/STATE]
        all_img_element = content_text.find_all('img') or [] # [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE]
        for ele in all_img_element: #  [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE] [STATE] ele =  [/STATE]
            # 删除部分属性
            img_url = format_image_url(ele.attrs['data-src']) #  [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEru7Y9cXa6t7b4sKlcURer8XpRkP84hURFRWJkSibUlDySMUdyPA8lxmSw/640?wx_fmt=png' [/STATE] [STATE] img_url = 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruxgJMkE11iao5lr8OibR9f9yqIrHx2cxUCu65pzIZP3auOicenn1dDpvkA/640?wx_fmt=png' [/STATE]
            del ele.attrs['data-src'] #  [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE]

            ele.attrs['src'] = img_url #  [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE] [STATE] ele =  [/STATE] [STATE] all_img_element = [, , , , , , , , , , , , , , , , , , , , , , , , , , , ] [/STATE]

            if not img_url.startswith('http'):
                raise WechatSogouException('img_url [{}] 不合法'.format(img_url))
            all_img_set.add(img_url) #  [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEru7Y9cXa6t7b4sKlcURer8XpRkP84hURFRWJkSibUlDySMUdyPA8lxmSw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE] [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEru7Y9cXa6t7b4sKlcURer8XpRkP84hURFRWJkSibUlDySMUdyPA8lxmSw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruxgJMkE11iao5lr8OibR9f9yqIrHx2cxUCu65pzIZP3auOicenn1dDpvkA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png'} [/STATE]

        backgroud_image = content_text.find_all(style=re.compile("background-image")) or [] # [STATE] backgroud_image = [

] [/STATE]
        for ele in backgroud_image: #  [STATE] ele =

 [/STATE]
            # 删除部分属性
            if ele.attrs.get('data-src'):
                del ele.attrs['data-src']

            if ele.attrs.get('data-wxurl'):
                del ele.attrs['data-wxurl'] # [STATE] content_text =

                                                 早上好~

不要总呆在自己的舒适圈里，

不走出去，

你很难发现自己的潜力

欢迎分享到朋友圈~

 [/STATE] # [STATE] ele =

 [/STATE] # [STATE] backgroud_image = [

] [/STATE]
            img_url = re.findall(backgroud_image_p, str(ele)) # [STATE] img_url = ['https://mmbiz.qpic.cn/mmbiz_jpg/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRHGXoMtN8oReOYz7SkiaHJqjk7ACtFQfUOhQkibtofRZt463fujIwQcicg/640?wx_fmt=jpeg'] [/STATE]
            if not img_url:
                continue
            all_img_set.add(img_url[0]) # [STATE] all_img_set = {'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruNFHXlrc4bmxH3DWgqn0tvBSHUTg6fcF9DUGlDf2kJFmmHrAtvicha1A/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'http://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiagSm5VtCHMcEYXtrmgBK4U7liaapv8Mhicwf05CWlM0JicxzBAs4QDQt2xOMVuL9Y4tEKSG1tSDVvOnA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRHGXoMtN8oReOYz7SkiaHJqjk7ACtFQfUOhQkibtofRZt463fujIwQcicg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruBcqVLOZsEGT1fRZvsRsmRqCl6eyLrYHR0kwovFhkjU8dSvhzs2mtRA/640?wx_fmt=png', 'http://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajJ1SEqcphq0AdJklqfSBSmfah3nFRxglymcibajPooleKzlV9qZZy5FcyOqDOuH5QibXVR0cuiahRkQ/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz/ianq03UUWGmK4x8wVTdM27HAUGhBg5y42uC4diafFxJ2oeg8gsqbRRfjOMibqibaUEg2AicYRX1YpE1ne58SMR2XGkQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEru7Y9cXa6t7b4sKlcURer8XpRkP84hURFRWJkSibUlDySMUdyPA8lxmSw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiajJ1SEqcphq0AdJklqfSBSmC42xAdtpV7C8YpDSZ6JXO52pg0m3cv5AfNpNeooyIsqQKS5D5lfTmQ/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruxgJMkE11iao5lr8OibR9f9yqIrHx2cxUCu65pzIZP3auOicenn1dDpvkA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwqLtGOkNR3jeI17pRBmuicnRJDNsjltcb7Y9rBOh7jxe0S3iadnGsnEXg/640?wx_fmt=jpeg'} [/STATE]

        # 4. 处理iframe
        all_img_element = content_text.find_all('iframe') or [] # [STATE] all_img_element = [] [/STATE]
        for ele in all_img_element:
            # 删除部分属性
            img_url = ele.attrs['data-src']
            del ele.attrs['data-src']
            ele.attrs['src'] = img_url

        # 5. 返回数据
        all_img_list = list(all_img_set) # [STATE] all_img_list = ['https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRYoicViaW9XPCpzfumwpdbOg0icWwx9OGEjuOgF7OCxLYxf0ibXz3T5ogxQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulWic8GkI4jTUAOfJrme36PZwQ2dic784yPtYumdthOKGrLYHfemicV6Hw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruNFHXlrc4bmxH3DWgqn0tvBSHUTg6fcF9DUGlDf2kJFmmHrAtvicha1A/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruMagzpWJa3IowapejQRxeaN9xNG1ond1XQ7Kd4TUtnSCqTMPJm50UWQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruGeGwW9Io6ibmFOteW04ibmg5HT8DKfEvfoojVleRiaibgON6Fwr6Hhanwg/640?wx_fmt=png', 'http://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiagSm5VtCHMcEYXtrmgBK4U7liaapv8Mhicwf05CWlM0JicxzBAs4QDQt2xOMVuL9Y4tEKSG1tSDVvOnA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/Jyco923vDiahUG7Gqyp3hMzafzu1MqfvRHGXoMtN8oReOYz7SkiaHJqjk7ACtFQfUOhQkibtofRZt463fujIwQcicg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruBcqVLOZsEGT1fRZvsRsmRqCl6eyLrYHR0kwovFhkjU8dSvhzs2mtRA/640?wx_fmt=png', 'http://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajJ1SEqcphq0AdJklqfSBSmfah3nFRxglymcibajPooleKzlV9qZZy5FcyOqDOuH5QibXVR0cuiahRkQ/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErulge7eq0v065JzON3PwdUWSXMPh9PLNRRmI9l4t8g5m4HYvhLCM73kg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz/ianq03UUWGmK4x8wVTdM27HAUGhBg5y42uC4diafFxJ2oeg8gsqbRRfjOMibqibaUEg2AicYRX1YpE1ne58SMR2XGkQ/640?wx_fmt=gif', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEru7Y9cXa6t7b4sKlcURer8XpRkP84hURFRWJkSibUlDySMUdyPA8lxmSw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/oq1PymRl9D7wicq1tSoqEUMOFsicSz0VMHQGKRJDOVGNqve308J4BjpiaqhdcJaFgicVsdn88v5icRLPWRyE4Um2M5g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruPfXZic5rn0ddft1UrbQdz1PvEmMhoQ5cw87H7gL0PImMlF4UB5wpkSg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErumf6Uuyibn37TsUkRY4Ahzxib69WZN0UP5b9iblJx7baFzCVdv7iakEyqkw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_gif/Jyco923vDiajJ1SEqcphq0AdJklqfSBSmC42xAdtpV7C8YpDSZ6JXO52pg0m3cv5AfNpNeooyIsqQKS5D5lfTmQ/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErux30g1cwicx2awgxGUrVAq3G6kACAWqdoAZ1jdjuLv7ShVjp9fjtKkcQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwloSIbsVMqDDYSQyjZ7sPdAl17PBJptmWGKvPCO2z3p9DPp6HwBmpcg/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_jpg/xrFYciaHL08BQibj45TouE53ViauIKoykFLFe6qb4jYnHM9xxicibN1gFfFVMUfMicqeTF3SYz25IaSxgbDvXGEFxK0g/640?wx_fmt=jpeg', 'https://mmbiz.qpic.cn/mmbiz_gif/v4vz52CcB10icDUYXeCCiatGPFKaHaOBnWIARweIA8tLOrFS5N5BBByIwqO8yCVjuUzwYAa2HuxiabDzQHtYD61Bw/640?', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruxgJMkE11iao5lr8OibR9f9yqIrHx2cxUCu65pzIZP3auOicenn1dDpvkA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErutPdD6pGvqMWZXBvtDl6Q72CuTpRa5C2eOPVswhh7W6rDXic45pRicdkg/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgErucGICXziaPSicIltx8Of5CkDJjKy6dxiclrVvByiabLaO7p3uZibTNmfhTxw/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruJD3CIeXArI8asI4qxCoqYuNN7paYWa4XfP2JuD6SjuF6OqTwgIzt7g/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruaXSrvfWk7B0jvWEogxVf8WvriaPGZjFwxtKPaKrmUBkfYxgOAZfR4rQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruQDBRUibgY8e14K7eR4x6fxMibeQ2ibJzuFNujBpVGHlacOW3iajP6zvsAA/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_png/v4vz52CcB13K0y1mCNoDfAMJ4nqJkGapfrQJ4KiatPCu1xiaiaFGF3DNfvhUCYliaKV0UVm2LtDrYRxtFnQ3IvL5RA/640', 'https://mmbiz.qpic.cn/mmbiz_png/Jyco923vDiajsBt80vSPPsBtpefTAgEruXXUwTb1e7uoXOvTJSexke9YgfkicFyibTria7CDgfia8VBUj6Q2XQqVIDQ/640?wx_fmt=png', 'https://mmbiz.qpic.cn/mmbiz_jpg/azXQmS1HA7lxZkZaxyTQ8yqLM57WTkZwqLtGOkNR3jeI17pRBmuicnRJDNsjltcb7Y9rBOh7jxe0S3iadnGsnEXg/640?wx_fmt=jpeg'] [/STATE]
        content_html = content_text.prettify() # [STATE] content_html = '
\n
\n
\n
\n
\n
\n      \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n      \n
\n
\n
\n
\n        早上好~\n
\n
\n
\n
\n
\n       \n        不要总呆在自己的舒适圈里，\n       \n
\n
\n       \n        不走出去，\n       \n
\n
\n       \n        你很难发现自己的潜力\n       \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n   \n
\n
\n
\n
\n
\n    \n     \n      欢迎分享到朋友圈~\n     \n    \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n     \n
\n
\n     \n
\n
\n
\n
\n   \n
\n
\n
\n' [/STATE]
        # 去除div[id=js_content]
        content_html = re.findall(js_content, content_html)[0][0] # [STATE] content_html = '\n
\n
\n
\n
\n
\n      \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n      \n
\n
\n
\n
\n        早上好~\n
\n
\n
\n
\n
\n       \n        不要总呆在自己的舒适圈里，\n       \n
\n
\n       \n        不走出去，\n       \n
\n
\n       \n        你很难发现自己的潜力\n       \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n   \n
\n
\n
\n
\n
\n    \n     \n      欢迎分享到朋友圈~\n     \n    \n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n     \n
\n
\n     \n
\n
\n
\n
\n   \n
\n
\n' [/STATE]
        return {
            'content_html': content_html,
            'content_img_list': all_img_list
        }

get_article_detail('<!DOCTYPE html>\n\n\n\n    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n    <meta http-equiv="X-UA-Compatible" content="IE=edge">\n    <meta name="viewport"\n          content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,viewport-fit=cover">\n    <meta name="apple-mobile-web-app-capable" content="yes">\n    <meta name="apple-mobile-web-app-status-bar-style" content="black">\n    <meta name="format-detection" content="telephone=no">\n\n\n    \n\n    \n    \n    \n\n\n\n\n\n', True, True)

1: def get_article_detail(text, del_qqmusic=True, del_voice=True):
2:         """根据微信文章的临时链接获取明细
3:
4:         1. 获取文本中所有的图片链接列表
5:         2. 获取微信文章的html内容页面(去除标题等信息)
6:
7:         Parameters
8:         ----------
9:         text : str or unicode
10:             一篇微信文章的文本
11:         del_qqmusic: bool
12:             删除文章中的qq音乐
13:         del_voice: bool
14:             删除文章中的语音内容
15:
16:         Returns
17:         -------
18:         dict
19:         {
20:             'content_html': str # 微信文本内容
21:             'content_img_list': list[img_url1, img_url2, ...] # 微信文本中图片列表
22:
23:         }
24:         """
25:         # 1. 获取微信文本content
26:         html_obj = BeautifulSoup(text, "lxml")
27:         content_text = html_obj.find('div', {'class': 'rich_media_content', 'id': 'js_content'})
28:
29:         # 2. 删除部分标签
30:         if del_qqmusic:
31:             qqmusic = content_text.find_all('qqmusic') or []
32:             for music in qqmusic:
33:                 music.parent.decompose()
34:
35:         if del_voice:
36:             # voice是一个p标签下的mpvoice标签以及class为'js_audio_frame db'的span构成，所以将父标签删除
37:             voices = content_text.find_all('mpvoice') or []
38:             for voice in voices:
39:                 voice.parent.decompose()
40:
41:         # 3. 获取所有的图片 [img标签，和style中的background-image]
42:         all_img_set = set()
43:         all_img_element = content_text.find_all('img') or []
44:         for ele in all_img_element:
45:             # 删除部分属性
46:             img_url = format_image_url(ele.attrs['data-src'])
47:             del ele.attrs['data-src']
48:
49:             ele.attrs['src'] = img_url
50:
51:             if not img_url.startswith('http'):
52:                 raise WechatSogouException('img_url [{}] 不合法'.format(img_url))
53:             all_img_set.add(img_url)
54:
55:         backgroud_image = content_text.find_all(style=re.compile("background-image")) or []
56:         for ele in backgroud_image:
57:             # 删除部分属性
58:             if ele.attrs.get('data-src'):
59:                 del ele.attrs['data-src']
60:
61:             if ele.attrs.get('data-wxurl'):
62:                 del ele.attrs['data-wxurl']
63:             img_url = re.findall(backgroud_image_p, str(ele))
64:             if not img_url:
65:                 continue
66:             all_img_set.add(img_url[0])
67:
68:         # 4. 处理iframe
69:         all_img_element = content_text.find_all('iframe') or []
70:         for ele in all_img_element:
71:             # 删除部分属性
72:             img_url = ele.attrs['data-src']
73:             del ele.attrs['data-src']
74:             ele.attrs['src'] = img_url
75:
76:         # 5. 返回数据
77:         all_img_list = list(all_img_set)
78:         content_html = content_text.prettify()
79:         # 去除div[id=js_content]
80:         content_html = re.findall(js_content, content_html)[0][0]
81:         return {
82:             'content_html': content_html,
83:             'content_img_list': all_img_list
84:         }
85:
86: get_article_detail('<!DOCTYPE html>\n\n\n\n    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n    <meta http-equiv="X-UA-Compatible" content="IE=edge">\n    <meta name="viewport"\n          content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,viewport-fit=cover">\n    <meta name="apple-mobile-web-app-capable" content="yes">\n    <meta name="apple-mobile-web-app-status-bar-style" content="black">\n    <meta name="format-detection" content="telephone=no">\n\n\n    \n\n    \n    \n    \n\n\n\n\n\n', True, True)

Question: What is the value of ' content_text ' in line '33' after '1' th iteration when 'get_article_detail('<!DOCTYPE html>\n\n\n\n    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n    <meta http-equiv="X-UA-Compatible" content="IE=edge">\n    <meta name="viewport"\n          content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,viewport-fit=cover">\n    <meta name="apple-mobile-web-app-capable" content="yes">\n    <meta name="apple-mobile-web-app-status-bar-style" content="black">\n    <meta name="format-detection" content="telephone=no">\n\n\n    \n\n    \n    \n    \n\n\n\n\n\n', True, True)' is executed?

Answer: <div class


1: def fill_from_encoding(enc: str) -> List[str]:
2:     lst: List[str] = []
3:     for x in range(256):
4:         try:
5:             lst += (bytes((x,)).decode(enc),)
6:         except Exception:
7:             lst += (chr(x),)
8:     return lst
9:
10: fill_from_encoding('cp1252')

Question: What is the value of ' lst ' in line '5' after '16' th iteration when 'fill_from_encoding('cp1252')' is executed?

Answer: ['\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', '\x08', '\t', '\n', '\x0b', '\x0c', '\r', '\x0e', '\x0f']


def rev_encoding(enc: List[str]) -> Dict[str, int]:
    rev: Dict[str, int] = {} # [STATE] rev = {} [/STATE]
    for i in range(256): #  [STATE] i = 0 [/STATE] [STATE] i = 1 [/STATE] [STATE] i = 2 [/STATE] [STATE] i = 3 [/STATE] [STATE] i = 4 [/STATE] [STATE] i = 5 [/STATE] [STATE] i = 6 [/STATE] [STATE] i = 7 [/STATE] [STATE] i = 8 [/STATE] [STATE] i = 9 [/STATE] [STATE] i = 10 [/STATE] [STATE] i = 11 [/STATE] [STATE] i = 12 [/STATE] [STATE] i = 13 [/STATE] [STATE] i = 14 [/STATE] [STATE] i = 15 [/STATE] [STATE] i = 16 [/STATE] [STATE] i = 17 [/STATE] [STATE] i = 18 [/STATE] [STATE] i = 19 [/STATE] [STATE] i = 20 [/STATE]
        char = enc[i] #  [STATE] char = '\x00' [/STATE] [STATE] char = '\x01' [/STATE] [STATE] char = '\x02' [/STATE] [STATE] char = '\x03' [/STATE] [STATE] char = '\x04' [/STATE] [STATE] char = '\x05' [/STATE] [STATE] char = '\x06' [/STATE] [STATE] char = '\x07' [/STATE] [STATE] char = '\x08' [/STATE] [STATE] char = '\t' [/STATE] [STATE] char = '\n' [/STATE] [STATE] char = '\x0b' [/STATE] [STATE] char = '\x0c' [/STATE] [STATE] char = '\r' [/STATE] [STATE] char = '\x0e' [/STATE] [STATE] char = '\x0f' [/STATE] [STATE] char = '\x10' [/STATE] [STATE] char = '\x11' [/STATE] [STATE] char = '\x12' [/STATE] [STATE] char = '\x13' [/STATE] [STATE] char = '\x14' [/STATE]
        if char == "\u0000":
            continue
        assert char not in rev, f"{char} at {i} already at {rev[char]}"
        rev[char] = i #  [STATE] rev = {'\x01': 1} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16, '\x11': 17} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16, '\x11': 17, '\x12': 18} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16, '\x11': 17, '\x12': 18, '\x13': 19} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16, '\x11': 17, '\x12': 18, '\x13': 19, '\x14': 20} [/STATE] [STATE] rev = {'\x01': 1, '\x02': 2, '\x03': 3, '\x04': 4, '\x05': 5, '\x06': 6, '\x07': 7, '\x08': 8, '\t': 9, '\n': 10, '\x0b': 11, '\x0c': 12, '\r': 13, '\x0e': 14, '\x0f': 15, '\x10': 16, '\x11': 17, '\x12': 18, '\x13': 19, '\x14': 20, '\x15': 21} [/STATE]
    return rev

rev_encoding(['\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', '\x08', '\t', '\n', '\x0b', '\x0c', '\r', '\x0e', '\x0f', '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', ' ', '!', '"', '#', '$', '%', '&', "'", '(', ')', '*', '+', ',', '-', '.', '/', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~', '\x7f', '€', '\x81', '‚', 'ƒ', '„', '…', '†', '‡', 'ˆ', '‰', 'Š', '‹', 'Œ', '\x8d', 'Ž', '\x8f', '\x90', '‘', '’', '“', '”', '•', '–', '—', '˜', '™', 'š', '›', 'œ', '\x9d', 'ž', 'Ÿ', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'])

Question: What is the value of ' char ' in line '4' after '10' th iteration when 'rev_encoding(['\x00', '\x01', '\x02', '\x03', '\x04', '\x05', '\x06', '\x07', '\x08', '\t', '\n', '\x0b', '\x0c', '\r', '\x0e', '\x0f', '\x10', '\x11', '\x12', '\x13', '\x14', '\x15', '\x16', '\x17', '\x18', '\x19', '\x1a', '\x1b', '\x1c', '\x1d', '\x1e', '\x1f', ' ', '!', '"', '#', '$', '%', '&', "'", '(', ')', '*', '+', ',', '-', '.', '/', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~', '\x7f', '€', '\x81', '‚', 'ƒ', '„', '…', '†', '‡', 'ˆ', '‰', 'Š', '‹', 'Œ', '\x8d', 'Ž', '\x8f', '\x90', '‘', '’', '“', '”', '•', '–', '—', '˜', '™', 'š', '›', 'œ', '\x9d', 'ž', 'Ÿ', '\xa0', '¡', '¢', '£', '¤', '¥', '¦', '§', '¨', '©', 'ª', '«', '¬', '\xad', '®', '¯', '°', '±', '²', '³', '´', 'µ', '¶', '·', '¸', '¹', 'º', '»', '¼', '½', '¾', '¿', 'À', 'Á', 'Â', 'Ã', 'Ä', 'Å', 'Æ', 'Ç', 'È', 'É', 'Ê', 'Ë', 'Ì', 'Í', 'Î', 'Ï', 'Ð', 'Ñ', 'Ò', 'Ó', 'Ô', 'Õ', 'Ö', '×', 'Ø', 'Ù', 'Ú', 'Û', 'Ü', 'Ý', 'Þ', 'ß', 'à', 'á', 'â', 'ã', 'ä', 'å', 'æ', 'ç', 'è', 'é', 'ê', 'ë', 'ì', 'í', 'î', 'ï', 'ð', 'ñ', 'ò', 'ó', 'ô', 'õ', 'ö', '÷', 'ø', 'ù', 'ú', 'û', 'ü', 'ý', 'þ', 'ÿ'])' is executed?

Answer: '\t'


def show_android_class_methods(args: list = None) -> None:
    """
        Shows the methods available on an Android class.

        :param args:
        :return:
    """

    if len(clean_argument_flags(args)) <= 0:
        click.secho('Usage: android hooking list class_methods <class name>', bold=True)
        return

    class_name = args[0] # [STATE] class_name = 'com.foo.bar' [/STATE]

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041905108928'> [/STATE]
    methods = api.android_hooking_get_class_methods(class_name) # [STATE] methods = ['foo', 'bar', 'baz'] [/STATE]

    # print the enumerated classes
    for class_name in sorted(methods): #  [STATE] class_name = 'bar' [/STATE] [STATE] class_name = 'baz' [/STATE] [STATE] class_name = 'foo' [/STATE]
        click.secho(class_name)

    click.secho('\nFound {0} method(s)'.format(len(methods)), bold=True)

show_android_class_methods(['com.foo.bar'])

1: def show_android_class_methods(args: list = None) -> None:
2:     """
3:         Shows the methods available on an Android class.
4:
5:         :param args:
6:         :return:
7:     """
8:
9:     if len(clean_argument_flags(args)) <= 0:
10:         click.secho('Usage: android hooking list class_methods <class name>', bold=True)
11:         return
12:
13:     class_name = args[0]
14:
15:     api = state_connection.get_api()
16:     methods = api.android_hooking_get_class_methods(class_name)
17:
18:     # print the enumerated classes
19:     for class_name in sorted(methods):
20:         click.secho(class_name)
21:
22:     click.secho('\nFound {0} method(s)'.format(len(methods)), bold=True)
23:
24: show_android_class_methods(['com.foo.bar'])

Question: What is the value of ' class_name ' in line '19' after '2' th iteration when 'show_android_class_methods(['com.foo.bar'])' is executed?

Answer: 'baz'


def show_registered_activities(args: list = None) -> None:
    """
        Enumerate all registered Activities

        :return:
    """

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041905341728'> [/STATE]
    activities = api.android_hooking_list_activities() # [STATE] activities = ['foo', 'bar', 'baz'] [/STATE]

    for class_name in sorted(activities): #  [STATE] class_name = 'bar' [/STATE] [STATE] class_name = 'baz' [/STATE] [STATE] class_name = 'foo' [/STATE]
        click.secho(class_name)

    click.secho('\nFound {0} classes'.format(len(activities)), bold=True)

show_registered_activities([])

1: def show_registered_activities(args: list = None) -> None:
2:     """
3:         Enumerate all registered Activities
4:
5:         :return:
6:     """
7:
8:     api = state_connection.get_api()
9:     activities = api.android_hooking_list_activities()
10:
11:     for class_name in sorted(activities):
12:         click.secho(class_name)
13:
14:     click.secho('\nFound {0} classes'.format(len(activities)), bold=True)
15:
16: show_registered_activities([])

Question: What is the value of ' class_name ' in line '11' after '1' th iteration when 'show_registered_activities([])' is executed?

Answer: 'bar'


def show_registered_broadcast_receivers(args: list = None) -> None:
    """
        Enumerate all registered BroadcastReceivers

        :return:
    """

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041837785872'> [/STATE]
    receivers = api.android_hooking_list_broadcast_receivers() # [STATE] receivers = ['foo', 'bar', 'baz'] [/STATE]

    for class_name in sorted(receivers): #  [STATE] class_name = 'bar' [/STATE] [STATE] class_name = 'baz' [/STATE] [STATE] class_name = 'foo' [/STATE]
        click.secho(class_name)

    click.secho('\nFound {0} classes'.format(len(receivers)), bold=True)

show_registered_broadcast_receivers([])

1: def show_registered_broadcast_receivers(args: list = None) -> None:
2:     """
3:         Enumerate all registered BroadcastReceivers
4:
5:         :return:
6:     """
7:
8:     api = state_connection.get_api()
9:     receivers = api.android_hooking_list_broadcast_receivers()
10:
11:     for class_name in sorted(receivers):
12:         click.secho(class_name)
13:
14:     click.secho('\nFound {0} classes'.format(len(receivers)), bold=True)
15:
16: show_registered_broadcast_receivers([])

Question: What is the value of ' class_name ' in line '11' after '1' th iteration when 'show_registered_broadcast_receivers([])' is executed?

Answer: 'bar'


def _class_is_prefixed_with_native(class_name: str) -> bool:
    """
        Check if a class name received is prefixed with one of the
        prefixes in the native_prefixes list.

        :param class_name:
        :return:
    """

    for prefix in native_prefixes: #  [STATE] prefix = '_' [/STATE] [STATE] prefix = 'NS' [/STATE] [STATE] prefix = 'CF' [/STATE] [STATE] prefix = 'OS_' [/STATE] [STATE] prefix = 'UI' [/STATE] [STATE] prefix = 'AWD' [/STATE] [STATE] prefix = 'GEO' [/STATE] [STATE] prefix = 'AC' [/STATE] [STATE] prefix = 'AF' [/STATE] [STATE] prefix = 'AU' [/STATE] [STATE] prefix = 'AV' [/STATE] [STATE] prefix = 'BK' [/STATE] [STATE] prefix = 'BS' [/STATE] [STATE] prefix = 'CA' [/STATE] [STATE] prefix = 'CB' [/STATE] [STATE] prefix = 'CI' [/STATE] [STATE] prefix = 'CL' [/STATE] [STATE] prefix = 'CT' [/STATE] [STATE] prefix = 'CUI' [/STATE] [STATE] prefix = 'DOM' [/STATE] [STATE] prefix = 'FBS' [/STATE]

        if class_name.startswith(prefix):
            return True

    return False

_class_is_prefixed_with_native('FooBar')

1: def _class_is_prefixed_with_native(class_name: str) -> bool:
2:     """
3:         Check if a class name received is prefixed with one of the
4:         prefixes in the native_prefixes list.
5:
6:         :param class_name:
7:         :return:
8:     """
9:
10:     for prefix in native_prefixes:
11:
12:         if class_name.startswith(prefix):
13:             return True
14:
15:     return False
16:
17: _class_is_prefixed_with_native('FooBar')

Question: What is the value of ' prefix ' in line '10' after '8' th iteration when '_class_is_prefixed_with_native('FooBar')' is executed?

Answer: 'AC'


def show_ios_class_methods(args: list) -> None:
    """
        Displays the methods available in a class.

        :param args:
        :return:
    """

    if len(clean_argument_flags(args)) <= 0:
        click.secho('Usage: ios hooking list class_methods <class name> (--include-parents)', bold=True)
        return

    classname = args[0] # [STATE] classname = 'TEKeychainManager' [/STATE]

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041837197248'> [/STATE]
    methods = api.ios_hooking_get_class_methods(classname, _should_include_parent_methods(args)) # [STATE] methods = ['foo', 'bar'] [/STATE]

    if len(methods) > 0:

        # dump the methods to screen
        for method in methods: #  [STATE] method = 'foo' [/STATE] [STATE] method = 'bar' [/STATE]
            click.secho(method)

        click.secho('\nFound {0} methods'.format(len(methods)), bold=True)

    else:
        click.secho('No class / methods found')

show_ios_class_methods(['TEKeychainManager'])

1: def show_ios_class_methods(args: list) -> None:
2:     """
3:         Displays the methods available in a class.
4:
5:         :param args:
6:         :return:
7:     """
8:
9:     if len(clean_argument_flags(args)) <= 0:
10:         click.secho('Usage: ios hooking list class_methods <class name> (--include-parents)', bold=True)
11:         return
12:
13:     classname = args[0]
14:
15:     api = state_connection.get_api()
16:     methods = api.ios_hooking_get_class_methods(classname, _should_include_parent_methods(args))
17:
18:     if len(methods) > 0:
19:
20:         # dump the methods to screen
21:         for method in methods:
22:             click.secho(method)
23:
24:         click.secho('\nFound {0} methods'.format(len(methods)), bold=True)
25:
26:     else:
27:         click.secho('No class / methods found')
28:
29: show_ios_class_methods(['TEKeychainManager'])

Question: What is the value of ' method ' in line '21' after '2' th iteration when 'show_ios_class_methods(['TEKeychainManager'])' is executed?

Answer: 'bar'


def save(args: list) -> None:
    """
        Save the current sessions command history to a file.

        :param args:
        :return:
    """

    if len(args) <= 0:
        click.secho('Usage: commands save <local destination>', bold=True)
        return

    destination = os.path.expanduser(args[0]) if args[0].startswith('~') else args[0] # [STATE] destination = 'foo.rc' [/STATE]

    with open(destination, 'w') as f: # [STATE] f = <MagicMock name='open().__enter__()' id='140041834114064'> [/STATE]
        for command in app_state.successful_commands: #  [STATE] command = 'foo' [/STATE] [STATE] command = 'bar' [/STATE]
            f.write('{0}\n'.format(command))

    click.secho('Saved commands to: {0}'.format(destination), fg='green')

save(['foo.rc'])

1: def save(args: list) -> None:
2:     """
3:         Save the current sessions command history to a file.
4:
5:         :param args:
6:         :return:
7:     """
8:
9:     if len(args) <= 0:
10:         click.secho('Usage: commands save <local destination>', bold=True)
11:         return
12:
13:     destination = os.path.expanduser(args[0]) if args[0].startswith('~') else args[0]
14:
15:     with open(destination, 'w') as f:
16:         for command in app_state.successful_commands:
17:             f.write('{0}\n'.format(command))
18:
19:     click.secho('Saved commands to: {0}'.format(destination), fg='green')
20:
21: save(['foo.rc'])

Question: What is the value of ' command ' in line '16' after '2' th iteration when 'save(['foo.rc'])' is executed?

Answer: 'bar'


def dump_all(args: list) -> None:
    """
        Dump memory from the currently injected process.
        Loosely based on:
            https://github.com/Nightbringer21/fridump

        :param args:
        :return:
    """

    if len(clean_argument_flags(args)) <= 0:
        click.secho('Usage: memory dump all <local destination>', bold=True)
        return

    # the destination file to write the dump to
    destination = args[0] # [STATE] destination = '/foo' [/STATE]

    # Check for file override
    if os.path.exists(destination):
        click.secho('Destination file {dest} already exists'.format(dest=destination), fg='yellow', bold=True)
        if not click.confirm('Continue, appending to the file?'):
            return

    # access type used when enumerating ranges
    access = 'rw-' # [STATE] access = 'rw-' [/STATE]

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041837128480'> [/STATE]
    ranges = api.memory_list_ranges(access) # [STATE] ranges = [{'size': 100, 'base': '0x7fff90800000'}] [/STATE]

    total_size = sum([x['size'] for x in ranges]) # [STATE] total_size = 100 [/STATE]
    click.secho('Will dump {0} {1} images, totalling {2}'.format(
        len(ranges), access, sizeof_fmt(total_size)), fg='green', dim=True)

    with click.progressbar(ranges) as bar: # [STATE] bar = {fill_char='#', empty_char='-', bar_template='%(label)s  [%(bar)s]  %(info)s', info_sep='  ', show_eta=True, show_percent=None, show_pos=False, item_show_func=None, label='', file=<_io.StringIO object at 0x7f5e07a3a3a0>, color=None, update_min_steps=1, _completed_intervals=0, width=36, autowidth=False, iter=<list_iterator object at 0x7f5e079fda90>, length=1, pos=0, avg=[], start=1712231192.5557132, last_eta=1712231192.5557132, eta_known=False, finished=False, max_width=None, entered=True, current_item=None, is_hidden=True, _last_line=''} [/STATE]
        for image in bar: #  [STATE] image = {'size': 100, 'base': '0x7fff90800000'} [/STATE]
            dump = bytearray() # [STATE] dump = bytearray(b'') [/STATE]
            bar.label = 'Dumping {0} from base: {1}'.format(sizeof_fmt(image['size']), hex(int(image['base'], 16))) # [STATE] bar = {fill_char='#', empty_char='-', bar_template='%(label)s  [%(bar)s]  %(info)s', info_sep='  ', show_eta=True, show_percent=None, show_pos=False, item_show_func=None, label='Dumping 100.0 B from base: 0x7fff90800000', file=<_io.StringIO object at 0x7f5e07a3a3a0>, color=None, update_min_steps=1, _completed_intervals=0, width=36, autowidth=False, iter=<list_iterator object at 0x7f5e079fda90>, length=1, pos=0, avg=[], start=1712231192.5557132, last_eta=1712231192.5557132, eta_known=False, finished=False, max_width=None, entered=True, current_item=None, is_hidden=True, _last_line=''} [/STATE]

            # catch and exception thrown while dumping.
            # this could for a few reasons like if the protection
            # changes or the range is reallocated
            try:
                # grab the (size) bytes starting at the (base_address) in chunks of BLOCK_SIZE
                chunks = _get_chunks(int(image['base'], 16), int(image['size']), BLOCK_SIZE) # [STATE] chunks = [(140735617695744, 100)] [/STATE]
                for chunk in chunks: #  [STATE] chunk = (140735617695744, 100) [/STATE]
                    dump.extend(bytearray(api.memory_dump(chunk[0], chunk[1]))) # [STATE] dump = bytearray(b'\x00') [/STATE]

            except Exception as e:
                continue

            # append the results to the destination file
            with open(destination, 'ab') as f: # [STATE] f = <MagicMock name='open().__enter__()' id='140041837437520'> [/STATE]
                f.write(dump)

    click.secho('Memory dumped to file: {0}'.format(destination), fg='green')

dump_all(['/foo'])

1: def dump_all(args: list) -> None:
2:     """
3:         Dump memory from the currently injected process.
4:         Loosely based on:
5:             https://github.com/Nightbringer21/fridump
6:
7:         :param args:
8:         :return:
9:     """
10:
11:     if len(clean_argument_flags(args)) <= 0:
12:         click.secho('Usage: memory dump all <local destination>', bold=True)
13:         return
14:
15:     # the destination file to write the dump to
16:     destination = args[0]
17:
18:     # Check for file override
19:     if os.path.exists(destination):
20:         click.secho('Destination file {dest} already exists'.format(dest=destination), fg='yellow', bold=True)
21:         if not click.confirm('Continue, appending to the file?'):
22:             return
23:
24:     # access type used when enumerating ranges
25:     access = 'rw-'
26:
27:     api = state_connection.get_api()
28:     ranges = api.memory_list_ranges(access)
29:
30:     total_size = sum([x['size'] for x in ranges])
31:     click.secho('Will dump {0} {1} images, totalling {2}'.format(
32:         len(ranges), access, sizeof_fmt(total_size)), fg='green', dim=True)
33:
34:     with click.progressbar(ranges) as bar:
35:         for image in bar:
36:             dump = bytearray()
37:             bar.label = 'Dumping {0} from base: {1}'.format(sizeof_fmt(image['size']), hex(int(image['base'], 16)))
38:
39:             # catch and exception thrown while dumping.
40:             # this could for a few reasons like if the protection
41:             # changes or the range is reallocated
42:             try:
43:                 # grab the (size) bytes starting at the (base_address) in chunks of BLOCK_SIZE
44:                 chunks = _get_chunks(int(image['base'], 16), int(image['size']), BLOCK_SIZE)
45:                 for chunk in chunks:
46:                     dump.extend(bytearray(api.memory_dump(chunk[0], chunk[1])))
47:
48:             except Exception as e:
49:                 continue
50:
51:             # append the results to the destination file
52:             with open(destination, 'ab') as f:
53:                 f.write(dump)
54:
55:     click.secho('Memory dumped to file: {0}'.format(destination), fg='green')
56:
57: dump_all(['/foo'])

Question: What is the value of ' dump ' in line '36' after '1' th iteration when 'dump_all(['/foo'])' is executed?

Answer: bytearray(b'')


def dump_from_base(args: list) -> None:
    """
        Dump memory from a base address for a specific size to file

        :param args:
        :return:
    """

    if len(clean_argument_flags(args)) < 3:
        click.secho('Usage: memory dump from_base <base_address> <size_to_dump> <local_destination>', bold=True)
        return

    # the destination file to write the dump to
    base_address = args[0] # [STATE] base_address = '0x00008000' [/STATE]
    memory_size = args[1] # [STATE] memory_size = '200' [/STATE]
    destination = args[2] # [STATE] destination = '/foo' [/STATE]

    # Check for file override
    if os.path.exists(destination):
        click.secho('Destination file {dest} already exists'.format(dest=destination), fg='yellow', bold=True)
        if not click.confirm('Override?'):
            return

    click.secho('Dumping {0} from {1} to {2}'.format(sizeof_fmt(int(memory_size)), base_address, destination),
                fg='green', dim=True)

    api = state_connection.get_api() # [STATE] api = <MagicMock name='get_api()' id='140041905169216'> [/STATE]

    # iirc, if you don't cast the return type to a bytearray it uses the sizeof(int) per cell, which is massive
    dump = bytearray() # [STATE] dump = bytearray(b'') [/STATE]
    chunks = _get_chunks(int(base_address, 16), int(memory_size), BLOCK_SIZE) # [STATE] chunks = [(32768, 200)] [/STATE]
    for chunk in chunks: #  [STATE] chunk = (32768, 200) [/STATE]
        dump.extend(bytearray(api.memory_dump(chunk[0], chunk[1]))) # [STATE] dump = bytearray(b'\x00') [/STATE]

    # append the results to the destination file
    with open(destination, 'wb') as f: # [STATE] f = <MagicMock name='open().__enter__()' id='140041907062336'> [/STATE]
        f.write(dump)

    click.secho('Memory dumped to file: {0}'.format(destination), fg='green')

dump_from_base(['0x00008000', '200', '/foo'])

1: def dump_from_base(args: list) -> None:
2:     """
3:         Dump memory from a base address for a specific size to file
4:
5:         :param args:
6:         :return:
7:     """
8:
9:     if len(clean_argument_flags(args)) < 3:
10:         click.secho('Usage: memory dump from_base <base_address> <size_to_dump> <local_destination>', bold=True)
11:         return
12:
13:     # the destination file to write the dump to
14:     base_address = args[0]
15:     memory_size = args[1]
16:     destination = args[2]
17:
18:     # Check for file override
19:     if os.path.exists(destination):
20:         click.secho('Destination file {dest} already exists'.format(dest=destination), fg='yellow', bold=True)
21:         if not click.confirm('Override?'):
22:             return
23:
24:     click.secho('Dumping {0} from {1} to {2}'.format(sizeof_fmt(int(memory_size)), base_address, destination),
25:                 fg='green', dim=True)
26:
27:     api = state_connection.get_api()
28:
29:     # iirc, if you don't cast the return type to a bytearray it uses the sizeof(int) per cell, which is massive
30:     dump = bytearray()
31:     chunks = _get_chunks(int(base_address, 16), int(memory_size), BLOCK_SIZE)
32:     for chunk in chunks:
33:         dump.extend(bytearray(api.memory_dump(chunk[0], chunk[1])))
34:
35:     # append the results to the destination file
36:     with open(destination, 'wb') as f:
37:         f.write(dump)
38:
39:     click.secho('Memory dumped to file: {0}'.format(destination), fg='green')
40:
41: dump_from_base(['0x00008000', '200', '/foo'])

Question: What is the value of ' dump ' in line '33' after '1' th iteration when 'dump_from_base(['0x00008000', '200', '/foo'])' is executed?

Answer: bytearray(b'\x00')