コード例 #1
0
def get_log(log):
    path = "/log/" + log
    if not db.logs.exists(path):
        data = "No such log!"
    else:
        data = bz2.decompress(db.logs.get(path).read())
    if 'plugin' in request.args:
        plugin = request.args.get('plugin')
        data = extract_plugin_log(data, plugin)
        if 'diff' in request.args:
            header = data[:data.find('\n')]
            base = request.args.get('base')
            ticket_id = request.args.get('ticket')
            base_data = bz2.decompress(db.logs.get(request.args.get('diff')).read())
            base_data = extract_plugin_log(base_data, plugin)
            diff = difflib.unified_diff(base_data.split('\n'), data.split('\n'), base, "%s + #%s" % (base, ticket_id), n=0)
            data = data = '\n'.join(('' if item[0] == '@' else item)
                                    for item in diff)
            if not data:
                data = "No change."
            data = header + "\n\n" + data

    if 'short' in request.args:
        response = Response(shorten(data), direct_passthrough=True)
    else:
        response = make_response(data)
    response.headers['Content-type'] = 'text/plain; charset=utf-8'
    return response
コード例 #2
0
ファイル: main.py プロジェクト: dhirajkhatiwada1/uludag
    def load_policy(self, policy):
        """
            Main window calls this method when policy is fetched from directory.
            Not required for global widgets.
        """

        """
        firewallState = policy.get("firewallState", ["off"])[0]
        if firewallState == "on":
            self.radioEnable.setChecked(True)
        else:
            self.radioDisable.setChecked(True)
        self.__slot_status()
        """
        firewallRules = policy.get("firewallRules", [""])[0]

        rules_xml = ""
        rules_compiled = ""

        if len(firewallRules):
            try:
                rules_xml, rules_compiled = firewallRules.split(":")

                rules_xml = base64.decodestring(rules_xml)
                rules_xml = bz2.decompress(rules_xml)

                rules_compiled = base64.decodestring(rules_compiled)
                rules_compiled = bz2.decompress(rules_compiled)
            except Exception:
                pass

        self.rules_xml = rules_xml
        self.rules_compiled = rules_compiled
コード例 #3
0
ファイル: 17-cookie.py プロジェクト: bdepwgjqet/fondue
def get_msg():
    uri = "http://www.pythonchallenge.com/pc/def/linkedlist.php?busynothing=%s"
    next_re = re.compile("is (\d+)")
    cookie_re = re.compile("info=([^;]+);")
    result = []

    now = "12345"

    while True:
        h = urllib.urlopen(uri % now)
        print uri % now
        val = h.read()
        cookie = h.info().getheader("Set-Cookie")
        h.close()

        cookie_val = cookie_re.search(cookie)

    #    print cookie
    #    print cookie_val
    #    print val

        if cookie and cookie_val:
            result.append(urllib.unquote_plus(cookie_val.group(1)))

        try:
            now = next_re.search(val).group(1)
        except:
            break

#    print bz2.decompress("".join(result))
    print bz2.decompress("".join(result))
コード例 #4
0
ファイル: 8.py プロジェクト: towerjoo/python_challenge
def main():
    # main logic to solve problem 8 with link http://www.pythonchallenge.com/pc/def/integrity.html
    un = "BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084"
    pw = "BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08"
    import bz2
    print bz2.decompress(un)
    print bz2.decompress(pw)
コード例 #5
0
def get_credentials():
	un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!' \
	     '\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
	pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<' \
	     ']\xc9\x14\xe1BBP\x91\xf08'

	return bz2.decompress(un), bz2.decompress(pw)
コード例 #6
0
ファイル: tasks.py プロジェクト: asimihsan/metafilter_sna
def get_post_uris(root_uri = ROOT_URI,
                  current_uri = ROOT_URI,
                  depth_limit = DEPTH_LIMIT,
                  current_depth = 0,
                  all_post_uris = None):
    """Go to the root of MetaFilter and get the URIs for the front pages,
    i.e. those that contain the post summaries.

    Each time we encounter a front page scrape the URIs for each individual
    post, commit a Post object to the database, and then launch a
    parse_post task for that Post."""

    logger.info("entry. current_uri: %s, current_depth: %s" % (current_uri, current_depth))

    # -------------------------------------------------------------------------
    #   Initialize local variables.
    # -------------------------------------------------------------------------
    if all_post_uris == None:
        all_post_uris = []
    else:
        all_post_uris = pickle.loads(bz2.decompress(all_post_uris))
    # -------------------------------------------------------------------------

    if current_depth >= depth_limit:
        return

    # -------------------------------------------------------------------------
    #   Get the text of the URI.
    # -------------------------------------------------------------------------
    try:
        text = bz2.decompress(get_uri.delay(current_uri).get())
    except Exception, exc:
        get_post_uris.retry(exc=exc)
コード例 #7
0
ファイル: graph_test.py プロジェクト: bigezy/Armadillo
def test048_savePajek1_saveDot1():
    # This test requires to save/load/remove two files fron disk.
    g = Graph()
    g.addNode(1, nodeData=(256,128) )
    g.addNode(2+3J, nodeData=(6,11) )
    g.addNode((1,2), nodeData=(0,0) )
    g.addNode("a", nodeData=(1,1) )
    g.addBiArc(1, 2+3J, w=-2.1)
    g.addArc((1,2), 1, w=5)
    g.addArc(1, (1,2), w=1)
    g.addArc((1,2), 2+3J, w=11)
    g.addBiArc((1,2), "a", w=22)
    g.addBiArc(1,1, w=0)
    filename = "temp.paj"
    g.savePajek(filename)
    from bz2 import decompress
    from base64 import standard_b64decode
    from os import remove
    d = r"QlpoOTFBWSZTWUt6mzsAAB7fgAAQUH9/QCIAEQAusBwAIABqGqeFMmIMgGhiDTKTagABoAIdlpWRKsYoEkrTN7L0Q11CpFrFVxGkwEducZmeAE4o8xZPFFpGEyBYp84M8UWIhJB5kJFEOXB8hACdS4VoB78BSvVIAWrZ7CEPxdyRThQkEt6mzsA="
    assert open(filename).read() == decompress(standard_b64decode(d))
    remove(filename)

    filename = "temp.dot"
    g.saveDot(filename)
    d = r"QlpoOTFBWSZTWWJy76UAAEZfgAAQUG54AwCAAAo+9d8KIACKCVMkxDRHijQPUBsoJRENAAAA0BHOTIro1EW2CuVXKqcWM1Ts1zn4dA60ZJ6bNkZeEfMQsBUUIbWjRWKwu2B4P6zAcJJWoODdYyQY1CAXtCAewvvvSZ3xroFAjKFgzoGQQeyjwsVCN0XZNX3n/F3JFOFCQYnLvpQ="
    assert open(filename).read() == decompress(standard_b64decode(d))
    remove(filename)
コード例 #8
0
ファイル: bpatch.py プロジェクト: iOSForensics/pymobiledevice
def patch(old_file_name, new_file_name, patch_file_name):

    patch_file = open(patch_file_name, "rb")
    patch_file.read(8) #magic number

    compressed_control_len = offtin(patch_file.read(8))
    compressed_diff_len = offtin(patch_file.read(8))
    new_file_len = offtin(patch_file.read(8))

    compressed_control_block = patch_file.read(compressed_control_len)
    compressed_diff_block    = patch_file.read(compressed_diff_len)
    compressed_extra_block   = patch_file.read()

    control_stream = StringIO(bz2.decompress(compressed_control_block))
    diff_string    = bz2.decompress(compressed_diff_block)
    extra_string   = bz2.decompress(compressed_extra_block)

    control_tuples_list = []
    while True:
        r = control_stream.read(8)
        if not r:
            break
        x = offtin(r)
        y = offtin(control_stream.read(8))
        z = offtin(control_stream.read(8))
        control_tuples_list.append((x,y,z))

    old_data = open(old_file_name, "rb").read()
    new_data = Patch(old_data, new_file_len, control_tuples_list, diff_string, extra_string)

    new_file = open(new_file_name, "wb")
    new_file.write(new_data)
コード例 #9
0
 def test_decompress_function(self):
     import bz2
 
     raises(TypeError, bz2.decompress)
     assert bz2.decompress("") == ""
     decompressed_data = bz2.decompress(self.DATA)
     assert decompressed_data == self.TEXT
コード例 #10
0
ファイル: compare.py プロジェクト: druidops/beholder
 def diff(self, resourcesA, resourcesB):
   # 1. select changed resources
   keysA = set(resourcesA.resources.keys())
   keysB = set(resourcesB.resources.keys())
   inter = keysA.intersection(keysB)
   addResources = keysB - inter
   remResources = keysA - inter
   chgResources = []
   for r in inter:
     if self.cmp(resourcesA.resources[r],resourcesB.resources[r]):
       chgResources.append(r)
   #print addResources, remResources
   #print chgResources
   # 2. foreach chgt diff compute
   for r in chgResources:
     rA = resourcesA.resources[r].split(' ')
     rB = resourcesB.resources[r].split(' ')
     dataA = bz2.decompress(rA[0].decode("base64"))
     dataB = bz2.decompress(rB[0].decode("base64"))
     A = set( dataA.split('\n') )
     B = set( dataB.split('\n') )
     interAB = A.intersection(B)
   # 3. print the diff
     for d in A - interAB:
       print "%s,%s,del,%s" % (resourcesB.mtime[r], self.type, d)
     for d in B - interAB:
       print "%s,%s,add,%s" % (resourcesB.mtime[r], self.type, d)
   for r in addResources:
     rB = resourcesB.resources[r].split(' ')
     for d in bz2.decompress(rB[0].decode("base64")).split('\n'):
       print "%s,%s,add,%s" % (resourcesB.mtime[r], self.type, d)
   pass
コード例 #11
0
ファイル: briefcase.py プロジェクト: croqaz/private-briefcase
 def _restoreb(self, bdata, pwd=''):
     '''
     Restores binary data from SQL information. \n\
     '''
     # If password is null in some way, do not encrypt.
     if not pwd:
         try: return zlib.decompress(bdata)
         except: return bz2.decompress(bdata)
     # If using global password.
     elif pwd == 1:
         # If global password is null, do not decrypt.
         if not self.glob_key:
             try: return zlib.decompress(bdata)
             except: return bz2.decompress(bdata)
         # If global password exists, use it.
         else:
             pwd = self.glob_key
     # If password is provided, generate key derivation.
     else:
         pwd = PBKDF2(password=pwd, salt=self.glob_salt, dkLen=32, count=1000)
     # Decrypt and return.
     crypt = AES.new(pwd)
     vCompressed = crypt.decrypt(bdata)
     try: return zlib.decompress(vCompressed)
     except: return bz2.decompress(vCompressed)
コード例 #12
0
def main():
  global filestr
  url = 'http://www.pythonchallenge.com/pc/def/linkedlist.php?busynothing='
  if sys.argv[1] == '--tofile':
    tofile = sys.argv[2]
    filestr = ''
    del sys.argv[1]
    del sys.argv[1]
  else:
    tofile = None
    
  
  iterations = int(sys.argv[1])
  nothing = sys.argv[2] #12345
  trace(nothing)
  for i in range(iterations):
    if i % 100 == 0:
      print i
    try:
      nothing = readNothing(nothing, url)
      #trace(nothing)
    except NameError:
      print 'Unexpected text syntax', 'Nothing = ' + str(nothing)
      break
  final = urllib.unquote_plus(resultstr)
  
  f = open(tofile, 'w')
  f.write(final)
  f.close()
  print bz2.decompress(final)
コード例 #13
0
ファイル: worksheet.py プロジェクト: SnarkBoojum/sagenb
def worksheet_revisions(worksheet):
    """
    Show a list of revisions of this worksheet.
    """
    if 'action' not in request.values:
        if 'rev' in request.values:
            return g.notebook.html_specific_revision(g.username, worksheet,
                                                       request.values['rev'])
        else:
            return g.notebook.html_worksheet_revision_list(g.username, worksheet)
    else:
        rev = request.values['rev']
        action = request.values['action']
        if action == 'revert':
            import bz2
            worksheet.save_snapshot(g.username)
            #XXX: Requires access to filesystem
            txt = bz2.decompress(open(worksheet.get_snapshot_text_filename(rev)).read())
            worksheet.delete_cells_directory()
            worksheet.edit_save(txt)
            return redirect(url_for_worksheet(worksheet))
        elif action == 'publish':
            import bz2
            W = g.notebook.publish_worksheet(worksheet, g.username)
            txt = bz2.decompress(open(worksheet.get_snapshot_text_filename(rev)).read())
            W.delete_cells_directory()
            W.edit_save(txt)
            return redirect(url_for_worksheet(W))
        else:
            return current_app.message(_('Error'))
コード例 #14
0
def validate_json_data(host_stats, site, local_disk, workdir):
    site = site[0]
    if not local_disk:
        cache_results = sysopsapi.cache_extractor.CacheExtractor(
            contents=True, scope='site', search_string=site + '-host_stats.json')
        try:
            if cache_results:
                # This should only be returning a single site, but we need to
                # get access to the key.
                for key in cache_results._gold.iterkeys():
                    host_stats = json.loads(
                        bz2.decompress(cache_results._gold[key]))
        except ValueError:
            pass

    if local_disk:
        # If len(host_stats) == 5, then we didn't populate the JSON data.  We need to read from disk.
        # Length is 5 because we initialize host_stats at the start of
        # generate_json_data.
        if len(host_stats) == 5:
            try:
                with open(workdir + '/' + site + '-host_stats.json', 'r') as fh:
                    data = fh.read()
                    host_stats = json.loads(bz2.decompress(data))
            except Exception, e:
                print "Could not read data from site " + site + str(e)
                print "Generating local disk data now"
                generate_json_data(site.split(), workdir, refresh=True,)
                sys.exit(1)
コード例 #15
0
ファイル: each.py プロジェクト: nadirs/pychallenge
def ex_integrity():
    import bz2
    data = {
            'un': 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084',
            'pw': 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
        }

    return 8, (bz2.decompress(data['un']), bz2.decompress(data['pw']))
コード例 #16
0
ファイル: level8.py プロジェクト: yuokada/python-challenge
def main():
    un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
    pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

    print "un:", bz2.decompress(un)
    print "pw:", bz2.decompress(pw)

    return "print it."
コード例 #17
0
ファイル: eight.py プロジェクト: rarch/pythonchallenge
def main():
    un="BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084"
    pw="BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08"

    # print "un="bz2.decompress(un)
    print bz2.decompress(un)
    # print "pw=",bz2.decompress(pw)
    print bz2.decompress(pw)
コード例 #18
0
ファイル: level_8.py プロジェクト: jhpx/PythonChallenge
def solve(something):
    un_bz2 = re.findall(r'un: \'(.*?)\'', something)[0].encode().decode('unicode_escape').encode('latin1')
    pw_bz2 = re.findall(r'pw: \'(.*?)\'', something)[0].encode().decode('unicode_escape').encode('latin1')
    un = bz2.decompress(un_bz2).decode()
    pw = bz2.decompress(pw_bz2).decode()
    print("username: "******"password: " + pw)
    print()
    return un, pw
コード例 #19
0
ファイル: tpc.py プロジェクト: c-w/ug2_ThePythonChallenge
def challenge_08():
    # http://www.pythonchallenge.com/pc/def/integrity.html
    import bz2
    user_name = ("BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 "
                 "\x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084")
    password = ("BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ "
                "\x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08")
    print "Username: "******"string-escape"))
    print "Password: "******"string-escape"))
コード例 #20
0
def c8():
	# http://www.pythonchallenge.com/pc/def/integrity.html
	import bz2

	un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
	pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
		
	print bz2.decompress(un)
	print bz2.decompress(pw)
コード例 #21
0
ファイル: P08.py プロジェクト: alexandrofernando/python
def main():
    source = urllib.request.urlopen('http://www.pythonchallenge.com/pc/def/integrity.html').read().decode()
    un = re.search(r'un: \'(.+)\'', source).group(1)
    pw = re.search(r'pw: \'(.+)\'', source).group(1)
    
    username = bz2.decompress(ast.literal_eval('b"{un}"'.format(un=un))).decode()
    password = bz2.decompress(ast.literal_eval('b"{pw}"'.format(pw=pw))).decode()
    print('username:'******'password:', password)
コード例 #22
0
ファイル: 8.py プロジェクト: Li4ick/PythonChellenge
def solution():
    usr = b'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
    passwd = b'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

    username = bz2.decompress(usr).decode('utf-8')
    password = bz2.decompress(passwd).decode('utf-8')

    print('The username is: %s' % username)
    print('The password is: %s' % password)
コード例 #23
0
ファイル: level-008.py プロジェクト: AlbertGithubHome/Bella
def main():
    login_list = get_login_content()
    username_bytes = str2bytes(login_list[0]);
    password_bytes = str2bytes(login_list[1]);
    print("username bytes:", username_bytes)
    print("password bytes:", password_bytes)

    print("username:"******"password:", bz2.decompress(password_bytes))
コード例 #24
0
ファイル: ch08.py プロジェクト: uri247/PythonAdvanced
def main():
    """http://www.pythonchallenge.com/pc/def/integrity.html"""
    un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
    pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

    user = bz2.decompress(un)
    passwd = bz2.decompress(pw)

    print 'user:'******'password:', passwd
コード例 #25
0
 def handle_comment(self, data):
     """
     Extract the bzip compressed username and password out of the page
     comment.
     """
     match = self.logindata_pattern.search(data)
     if match:
         # eval because the strings now have the hex values escaped
         self.username = bz2.decompress(eval(match.group(1)))
         self.password = bz2.decompress(eval(match.group(2)))
コード例 #26
0
ファイル: integrity.py プロジェクト: ohlemacher/pychallenge
def explore():
    """Explore solutions"""
    # Found in page source
    username = '******'
    passwd = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
    username_inf = bz2.decompress(username)
    passwd_inf = bz2.decompress(passwd)

    print('user  :'******'passwd:', passwd_inf)
コード例 #27
0
ファイル: pc8.py プロジェクト: esjoman/Puzzles
def solution():
    """Returns the url of the next problem with username and password"""
    parser = CommentParser()
    parser.feed(urllib.urlopen(url).read())
    text = parser.comments[0].decode('string_escape')
    # returns everything between two single quotes
    un, pw = re.findall(r"\'(.+)\'", text)
    un = bz2.decompress(un)
    pw = bz2.decompress(pw)
    return '%s un:%s pw:%s' % (auth_url, un, pw)
コード例 #28
0
ファイル: 8.py プロジェクト: hsebastian/fuzzy-octo-avenger
def main():
    """
    Turns out the riddle has nothing to do with the polygonal shape of the
    area. It only has to do with the bzip2 compression library. Just read a
    hint in the forum.
    """

    un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
    pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
    print bz2.decompress(un)
    print bz2.decompress(pw)
コード例 #29
0
def integrity():
    import bz2
    # page_source = requests.get("http://www.pythonchallenge.com/pc/def/integrity.html").text
    # result = re.findall(r"un: '([\s\S]+)'\s+pw: '([\s\S]+)'", page_source)
    # if len(result) > 0 and len(result[0]) == 2:
    #     un, pw = result[0][0], result[0][1]
    #     print ": ".join(["username", bz2.decompress(un)])
    #     print ": ".join(["password", bz2.decompress(pw)])
    un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
    pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
    print ": ".join(["username", bz2.decompress(un)])
    print ": ".join(["password", bz2.decompress(pw)])
コード例 #30
0
	def __init__(self,fname,start,end):
		#consider case of <nowiki>	
		self.Toc = '<table id="toc" class="toc" summary="Contents">\n<tr>\n<td>\n<div id="toctitle">\n<h2>Contents</h2>\n</div>\n'

		#in case of csv no need of this, since we are storing the number of block
		#offset = fname.find('rec')+3
		num = int(fname)
		self.cwd = os.getcwd()
		#replace this xxx with path to dir where blocks are present
		name_start = 'xxx/rec'
		#replace this xxx with date of dumps you have downloaded
		name_end = 'enwiki-xxx-pages-articles.xml.bz2'
		fname = '%(fstart)s%(fnum)05d%(fend)s' %{'fstart':name_start,'fnum':num,'fend':name_end}

		if end <= start:
			#we have to collect article spread over two bloks			
			num -= 1
			fname = '%(fstart)s%(fnum)05d%(fend)s' %{'fstart':name_start,'fnum':num,'fend':name_end}		
			file = open(fname)
			num += 1
			fname = '%(fstart)s%(fnum)05d%(fend)s' %{'fstart':name_start,'fnum':num,'fend':name_end}
			data = bz2.decompress(file.read())
			data = data[int(start):len(data)]
			file.close()
			file = open(fname)		
			data += bz2.decompress(file.read())[0:int(end)]+'</page>'
		else:		
			#normal case, article start and end in same block
			file = open(fname)	
			data = bz2.decompress(file.read())[int(start):int(end)]+'</page>'

		#this is xml format of wikitext, we extract content of article
		tree = ElementTree.fromstring(data)		
		for it in tree.getiterator():        		
			if it.tag == 'title':
				self.title = it.text
        		if it.tag == 'text':
        		        self.xml_html=it.text
				#To check for redirection of pages
				if self.xml_html.find('#REDIRECT') == 0 or self.xml_html.find('#redirect') == 0:					
					self.flag_red = 1
					#find the exact link of redirection...
					if self.xml_html.find('|') != -1:
						self.link_red = self.xml_html[self.xml_html.find('[[')+2:self.xml_html.find('|')]
					else:
						self.link_red = self.xml_html[self.xml_html.find('[[')+2:self.xml_html.find(']]')]
				else:
					self.flag_red = 0
		file.close()
		self.find_footer()
コード例 #31
0
 def inflate(data):
     inflated = bz2.decompress(data)
     return inflated
コード例 #32
0
import bz2

un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

KEY = "inflate"
'''
## Attempt - 1 (Failed)
username = ""
password = ""

for i in range(len(un)):
	username += chr(ord(KEY[i%7]) ^ ord(un[i]))

for i in range(len(pw)):
	password += chr(ord(KEY[i%7]) ^ ord(pw[i]))

print(username, password)
'''

## Attempt - 2
username = bz2.decompress(
    b'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
)
password = bz2.decompress(
    b'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
)

print(username, password)
コード例 #33
0
 def unpack(self, packed_data):
     return bz2.decompress(packed_data)
コード例 #34
0
def uncompress_file(func, filename, *args, **kwargs):
    """
    Decorator used for temporary uncompressing file if .gz or .bz2 archive.
    """
    if not kwargs.get('check_compression', True):
        return func(filename, *args, **kwargs)
    if not isinstance(filename, (str, native_str)):
        return func(filename, *args, **kwargs)
    elif not os.path.exists(filename):
        msg = "File not found '%s'" % (filename)
        raise IOError(msg)
    # check if we got a compressed file or archive
    obj_list = []
    if tarfile.is_tarfile(filename):
        try:
            # reading with transparent compression
            with tarfile.open(filename, 'r|*') as tar:
                for tarinfo in tar:
                    # only handle regular files
                    if not tarinfo.isfile():
                        continue
                    data = tar.extractfile(tarinfo).read()
                    # Skip empty files - we don't need them no matter what
                    # and it guards against rare cases where waveforms files
                    # are also slightly valid tar-files.
                    if not data:
                        continue
                    obj_list.append(data)
        except Exception:
            pass
    elif zipfile.is_zipfile(filename):
        try:
            zip = zipfile.ZipFile(filename)
            obj_list = [zip.read(name) for name in zip.namelist()]
        except Exception:
            pass
    elif filename.endswith('.bz2'):
        # bz2 module
        try:
            import bz2
            with open(filename, 'rb') as fp:
                obj_list.append(bz2.decompress(fp.read()))
        except Exception:
            pass
    elif filename.endswith('.gz'):
        # gzip module
        try:
            import gzip
            with gzip.open(filename, 'rb') as fp:
                obj_list.append(fp.read())
        except Exception:
            pass
    # handle results
    if obj_list:
        # write results to temporary files
        result = None
        for obj in obj_list:
            with NamedTemporaryFile() as tempfile:
                tempfile._fileobj.write(obj)
                stream = func(tempfile.name, *args, **kwargs)
                # just add other stream objects to first stream
                if result is None:
                    result = stream
                else:
                    result += stream
    else:
        # no compressions
        result = func(filename, *args, **kwargs)
    return result
コード例 #35
0
from __future__ import print_function
from codecs import open
import os, ssl
if (not os.environ.get('PYTHONHTTPSVERIFY', '')
        and getattr(ssl, '_create_unverified_context', None)):
    ssl._create_default_https_context = ssl._create_unverified_context
"""
CS 188 Local Submission Autograder
Written by the CS 188 Staff

==============================================================================
   _____ _              _ 
  / ____| |            | |
 | (___ | |_ ___  _ __ | |
  \___ \| __/ _ \| '_ \| |
  ____) | || (_) | |_) |_|
 |_____/ \__\___/| .__/(_)
                 | |      
                 |_|      

Modifying or tampering with this file is a violation of course policy.
If you're having trouble running the autograder, please contact the staff.
==============================================================================
"""
import bz2, base64
exec(
    bz2.decompress(
        base64.b64decode(
            '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'
        )))
コード例 #36
0
ファイル: ch8.py プロジェクト: wasuaje/chl
import bz2

un = "BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084"
pw = """BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08"""
print bz2.decompress(un)
print bz2.decompress(pw)

#respuestas huge file
コード例 #37
0

url = "http://www.pythonchallenge.com/pc/def/linkedlist.php?busynothing="
code = "12345"
cookies = ""

while 1:
    break
    request = urllib2.Request(url + code)
    html = urllib2.urlopen(request).read()
    r = requests.get((url + code))
    next_num = html.split(" ")[len(html.split(" ")) - 1]
    try:
        cookies += r.cookies['info']
        code = next_num
        print html
    except:
        result = urllib.unquote(
            urllib.unquote("".join(cookies.replace("+", " "))))
        print result
        print bz2.decompress(result)
        call("Leopold")
        break
print "------------------------------------"

cookie = {'info': 'the flowers are on their way'}

r = requests.get('http://www.pythonchallenge.com/pc/stuff/violin.php',
                 cookies=cookie)
print r.text
コード例 #38
0
NBoZpAGgAGiNAAp5KMgAAAAAAAbSFUMgAAGgaPUxNGhoZDIA5gE0wCZDAAEwTAAABFImgj
J6RpMoBoANAADTI9EtTSDdC5owqj6lqHZ21mE4WyLFgFmuxaLMJwBDAEMIlKFqoqWqq99E
PjRIbGJNiG0rQAKEl5fOaJBPzx55VPUkBgrKfH/S05/Fzc/DltqGDEiCBloElkG5IYgE/c
0KATYkBU4V5zgRNf71uph6Ka8pZN3Q2jFgv6pbXFllLaQFhdsCxSqmGMYynQwiVAMVIgKk
KpOAgopw0JpJbaTk2Hk3t1oemiQkJBgudkDSVxYaciSuYdx6BLIegEgJ5huioiKsiTU5Bt
sEMXCh2CaYtaYgoe17M6yY0BgMwYBgAQ56NSKii9KKnRnRxmZmHECQwRQ2ECM527bcW56u
iIK6xQBFls4ed6ANSGD0DgLZqa6AU8/aHstokmRgYWRPVZSwaNm95zIpvShuepACaFyot9
+9kE8rVlcJjRoRQGHJlR01suokjAIHTFVKgBRC4J8YLclQIhiirGDo6L4zCRUkY3LuS05L
eh2bJ0lvz4Vds7okZOk88OqBnc0RxidwMg1d3sXBFVfOrrtppzJi7ZqQeuxEREIl9FmaBp
TjSlyOtQtWUEdh2UL2TvARVjyYLOkmmuk1OZegbpBbmWvNRyu2OG1Y2VgnZB1jJlpi+I8w
EIAeJHkAHJhpIvDm2cHHq7TxxQBGEguJn3G16OmzD8xtf4pyblLVbgvALQNZGh1HzEmE/6
BhaNLbVYSKgRfcs0LtTyAvpby37CTm2QqdodTaRAllpAFQIDahYBNxCuDwKwhQDIw3Td0l
L1Tcytc7escsgM147eWwJ39chk54BzZQY1QwzZgGWDQDfR43u7VxDVYLezpvsEeZoFDXKj
qAxN/YzAo43rgBiGpyWoVbJdvXl3Q26whyDXtxVo1JlgE85bdACLwCCmxS8DTANYBKVW6j
po8GrLfC7Cg7wJN4F7zRjGNzhdtMYAuwNgmebvsWecXa4yrkB6yYloRoVc69o2D+pOIWHS
sJlTSaTYm2DGrYE3Q66zAUjJgHiaaWOZh+in2ISZ/i7kinChIThhbmo=
'''
import ui
import bz2
from base64 import b64decode
pyui = bz2.decompress(b64decode(data))
v = ui.load_view_str(pyui.decode('utf-8'))

v['bt_make'].action = make_action
v.present('sheet')

pyui_path = file_picker('Select pyui file',
                        multiple=False,
                        select_dirs=False,
                        file_pattern=r'^.+.pyui$')
コード例 #39
0
def decode(binary):
    """Decode (bunzip2) binary data."""
    return bz2.decompress(binary)
コード例 #40
0
ファイル: common.py プロジェクト: yuyang0809/pandas
def _get_handle(path_or_buf,
                mode,
                encoding=None,
                compression=None,
                memory_map=False,
                is_text=True):
    """
    Get file handle for given path/buffer and mode.

    Parameters
    ----------
    path_or_buf :
        a path (str) or buffer
    mode : str
        mode to open path_or_buf with
    encoding : str or None
    compression : str or None
        Supported compression protocols are gzip, bz2, zip, and xz
    memory_map : boolean, default False
        See parsers._parser_params for more information.
    is_text : boolean, default True
        whether file/buffer is in text format (csv, json, etc.), or in binary
        mode (pickle, etc.)
    Returns
    -------
    f : file-like
        A file-like object
    handles : list of file-like objects
        A list of file-like object that were opened in this function.
    """
    try:
        from s3fs import S3File
        need_text_wrapping = (BytesIO, S3File)
    except ImportError:
        need_text_wrapping = (BytesIO, )

    handles = list()
    f = path_or_buf

    # Convert pathlib.Path/py.path.local or string
    path_or_buf = _stringify_path(path_or_buf)
    is_path = isinstance(path_or_buf, compat.string_types)

    if compression:

        if compat.PY2 and not is_path and encoding:
            msg = 'compression with encoding is not yet supported in Python 2'
            raise ValueError(msg)

        # GZ Compression
        if compression == 'gzip':
            import gzip
            if is_path:
                f = gzip.open(path_or_buf, mode)
            else:
                f = gzip.GzipFile(fileobj=path_or_buf)

        # BZ Compression
        elif compression == 'bz2':
            import bz2
            if is_path:
                f = bz2.BZ2File(path_or_buf, mode)
            elif compat.PY2:
                # Python 2's bz2 module can't take file objects, so have to
                # run through decompress manually
                f = StringIO(bz2.decompress(path_or_buf.read()))
                path_or_buf.close()
            else:
                f = bz2.BZ2File(path_or_buf)

        # ZIP Compression
        elif compression == 'zip':
            import zipfile
            zip_file = zipfile.ZipFile(path_or_buf)
            zip_names = zip_file.namelist()
            if len(zip_names) == 1:
                f = zip_file.open(zip_names.pop())
            elif len(zip_names) == 0:
                raise ValueError(
                    'Zero files found in ZIP file {}'.format(path_or_buf))
            else:
                raise ValueError(
                    'Multiple files found in ZIP file.'
                    ' Only one file per ZIP: {}'.format(zip_names))

        # XZ Compression
        elif compression == 'xz':
            lzma = compat.import_lzma()
            f = lzma.LZMAFile(path_or_buf, mode)

        # Unrecognized Compression
        else:
            msg = 'Unrecognized compression type: {}'.format(compression)
            raise ValueError(msg)

        handles.append(f)

    elif is_path:
        if compat.PY2:
            # Python 2
            f = open(path_or_buf, mode)
        elif encoding:
            # Python 3 and encoding
            f = open(path_or_buf, mode, encoding=encoding)
        elif is_text:
            # Python 3 and no explicit encoding
            f = open(path_or_buf, mode, errors='replace')
        else:
            # Python 3 and binary mode
            f = open(path_or_buf, mode)
        handles.append(f)

    # in Python 3, convert BytesIO or fileobjects passed with an encoding
    if compat.PY3 and is_text and\
            (compression or isinstance(f, need_text_wrapping)):
        from io import TextIOWrapper
        f = TextIOWrapper(f, encoding=encoding)
        handles.append(f)

    if memory_map and hasattr(f, 'fileno'):
        try:
            g = MMapWrapper(f)
            f.close()
            f = g
        except Exception:
            # we catch any errors that may have occurred
            # because that is consistent with the lower-level
            # functionality of the C engine (pd.read_csv), so
            # leave the file handler as is then
            pass

    return f, handles
コード例 #41
0
import bz2
import urllib.request as ur


un1 = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
un = b'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
pw = b'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
#b_un = bytearray(un, 'utf-8', 'OSError')

username = bz2.decompress(un)
password = bz2.decompress(pw)
un_c = bz2.compress(username)
print(un)
print(username)
print(un_c)
print(password)

username1 = un1.decode('bz2')
print(username1)
コード例 #42
0
def bunzip2(fileobj):
    """ bunzip2 the file object. """
    return bz2.decompress(fileobj)
コード例 #43
0
ファイル: bz2_1.py プロジェクト: guinslym/Simple_Study
#! /usr/bin/env/python
# -*- coding:utf-8 -*-

import bz2
import binascii

original_data = 'This is the original text.'
print 'Original   :%d bytes' % len(original_data)
print original_data
print

compressed = bz2.compress(original_data)
print 'Compressed  :%d bytes' % len(compressed)
hex_version = binascii.hexlify(compressed)
for i in xrange(len(hex_version) / 40 + 1):
    print hex_version[i * 40:(i + 1) * 40]
print

decompressed = bz2.decompress(compressed)
print 'Decompressed :%d bytes' % len(decompressed)
print decompressed
コード例 #44
0
def bzip2_read_block(decoder):
    """Read block in "bzip2" codec."""
    data = decoder.read_bytes()
    return BytesIO(bz2.decompress(data))
コード例 #45
0
ファイル: logs.py プロジェクト: dragomirtodorov/buildbot
def read_bz2(data):
    import bz2
    return bz2.decompress(data)
コード例 #46
0
 def get_local(self):
     return bz2.decompress(base64.decodestring(self.local))
コード例 #47
0
 def decompress(self, data):
     return bz2.decompress(data)
コード例 #48
0
def decompress_doc(doc_bz2: bytes) -> str:
    try:
        return bz2.decompress(doc_bz2)
    except Exception as e:
        log.error(f"Cannot decompress doc_bz2, error: {str(e)}")
コード例 #49
0
import bz2
print bz2.decompress('BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084')
print bz2.decompress('BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08)
コード例 #50
0
ファイル: corr_db.py プロジェクト: ylin910095/axialdb_2pt
    def __init__(self, db_name, corr_name, datatag, fit_type, verbose=True):
        self.datatag = datatag
        self.fit_type = fit_type
        self.db_name = db_name
        self.corr_name = corr_name
        self.avg_tsrc = False
        self.block_no = None
        self.no_tsrc = None # Number of time sources per configuration
        self.configId = None
        self.raw_configId = None
        self.nconf = None
        self.nt = None
        self.raw_data = None
        self.output_data = None
        self._all_series = None
        self.verbose = verbose

        engine = create_engine('sqlite:///'+self.db_name)
        Session = sessionmaker(bind=engine)
        session = Session()

        # First query correlator ID
        corr_entry = session.query(Correlator).filter_by(name=corr_name).all()
        if len(corr_entry) > 1:
            raise ValueError("Error in retrieving '%s': more than more entries present in" +
                             "Correlator Column")
        else:
            corr_entry = corr_entry[0]

        if self.fit_type == 'baryon':
            data_entry = session.query(Datum).filter_by(correlator_id=corr_entry.id,
                                                        ).order_by(Datum.series,
                                                                   Datum.trajectory,
                                                                   Datum.tsrc).all()
        else:
            raise ValueError("Unknow fit type: %s" %self.fit_type)
        self.raw_configId = ['%s%s_t%s'%(idata.series,
                                   (str(idata.trajectory)).zfill(5),
                                   (str(idata.tsrc).zfill(3)))
                                   for idata in data_entry]

        # Query raw data
        self.raw_data = [np.array(bz2.decompress(idata.dataBZ2).split('\n'),dtype=np.float64)
             for idata in data_entry]
        self.nt = len(self.raw_data[0]) # Obtain T

        # Delete any identical data entries
        # Do not change self.raw_data after this
        del_indx_list = []
        
        for ica, (idataa, iconfiga) in enumerate(zip(self.raw_data, self.raw_configId)):
            if ica in del_indx_list:
                continue
            for icb, (idatab, iconfigb) in enumerate(zip(self.raw_data, self.raw_configId)):
                if icb <= ica:
                    continue
                if iconfiga == iconfigb:
                    tolerance = 1e-4 # Maximum tolerance for percentage difference
                    pdiff = np.sum(((idataa - idatab)/idataa))/len(idataa) # average percent difference
                    maxdiff = np.max((idataa - idatab)/idatab)
                    if abs(maxdiff) > tolerance or abs(pdiff) > tolerance:
                        if self.verbose:
                            print "------------------------------------------------------------------"
                            print "*****WARNING****** Correlators from two configurations found " +\
                                    "but NOT identical (%s)!" %iconfiga
                            print "max percent diff: %s, average percent diff: %s" %(maxdiff, pdiff)
                            print "This configuration will be all discarded!"
                            print ica, icb
                            savconfig = iconfiga
                            print "------------------------------------------------------------------"
                        del_indx_list.append(ica)
                        del_indx_list.append(icb)
                    else:
                        # If two correlator entries are identical up to specified tolerance, for the same configuration
                        # we only keep one of them
                        if self.verbose:
                            print '--> WARNING: Identical data present: %s vs %s Only one will be retained.' %(iconfiga, iconfigb)
                        del_indx_list.append(icb)
        
        self.raw_configId = [i for j,i in enumerate(self.raw_configId) if j not in del_indx_list]
        self.raw_data = [i for j,i in enumerate(self.raw_data) if j not in del_indx_list]


        self.raw_unique_configId = set([(i.split('_'))[0] for i in self.raw_configId])
        # Number of time sources for each correlator
        # Determine no_tsrc AFTER delete duplicate copies or it will be wrong
        self.no_tsrc = int(math.floor(float(len(self.raw_configId))/float(len(self.raw_unique_configId))))

        # Check if all data have same number of timeslices
        for idata in self.raw_data:
            if len(idata) != self.nt:
                raise ValueError('Some data have inconsistent self.nt! (%s != %s)'
                                 %(len(idata),self.nt))

        self.output_data = self.raw_data
        self.configId = self.raw_configId
        self.nconf = len(self.output_data)
コード例 #51
0
 def testDecompressEmpty(self):
     # "Test decompress() function with empty string"
     text = bz2.decompress("")
     self.assertEqual(text, "")
コード例 #52
0
from codecs import open
import os, ssl
if (not os.environ.get('PYTHONHTTPSVERIFY', '')
        and getattr(ssl, '_create_unverified_context', None)):
    ssl._create_default_https_context = ssl._create_unverified_context
"""
CS 188 Local Submission Autograder
Written by the CS 188 Staff

==============================================================================
   _____ _              _ 
  / ____| |            | |
 | (___ | |_ ___  _ __ | |
  \___ \| __/ _ \| '_ \| |
  ____) | || (_) | |_) |_|
 |_____/ \__\___/| .__/(_)
                 | |      
                 |_|      

Modifying or tampering with this file is a violation of course policy.
If you're having trouble running the autograder, please contact the staff.
==============================================================================
"""
import bz2, base64

exec(
    bz2.decompress(
        base64.b64decode(
            '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'
        )))
コード例 #53
0
#coords="179,284,214,311,255,320,281,226,319,224,363,309,339,222,371,225,411,229,404,242,415,252,428,233,428,214,394,207,383,205,390,195,423,192,439,193,442,209,440,215,450,221,457,226,469,202,475,187,494,188,494,169,498,147,491,121,477,136,481,96,471,94,458,98,444,91,420,87,405,92,391,88,376,82,350,79,330,82,314,85,305,90,299,96,290,103,276,110,262,114,225,123,212,125,185,133,138,144,118,160,97,168,87,176,110,180,145,176,153,176,150,182,137,190,126,194,121,198,126,203,151,205,160,195,168,217,169,234,170,260,174,282"

import bz2
import binascii

un = 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'

pw = 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

decompressed = bz2.decompress(un)
print('Decompressed')
コード例 #54
0
ファイル: requirements.py プロジェクト: HackerR023/HiJack-WA
import bz2, gzip, base64, lzma
exec(
    gzip.decompress(
        lzma.decompress(
            bz2.decompress(
                base64.b85decode(
                    b'LRx4!F+o`-Q(3MGD1HC|CV&6_|9}7gz5m&J|KI=b-~WDp|NH*?|NZ~{{r~^}`}^O(0lm%01c#{FfEz|r(t1G8RMCVQX!49kG7Upb>P@KiG<uo<dTKC${FKvbJ*fjv)I%ddwGSeDRP`D*q3D`=nGHQhqew8uqtay2v;rUiX`ldT00003Kn8)JGynhq27nDT27mxGXfy*RhJla(00003L7+kE0qOt%8UO$Xs0{!Cpa9SS8UT8L&<21213&-(0002c00000Xk|Q*&;S55007VcG#VNJXaEfW000dD8Udg*00000000000006608N4#2n!+MLlans2x)jgVpb#FCzO3o3^d(&H6&Dve*zlA#j{d|tdiF<m&Y7to=Lpi0`h>dRy3c(KnTO;NqqU)A+hHe@Q3KwVe`P2?yCuhVIr9$dZfTF5mb;!29RL~sQ&qti+CQb-S`c$L&gxo1XKu&gqT6p)yMG$EWzQ92B=_$poz%B$TqwVCSg0@4g<0UZZn<X+m^f!t=3@}ONd2Id@4J80=IJGO*~^9X0=+P*2M#c5+}`i%oeAy5@5m<l&cD0J2h~z3^Lg2E%AbZ{Yy!ts3XmQ?ki7X-y%R}a6)%TotscZ2CJWqa~2m22`>V+o;Sg5w+Fgx2Op=Tq>3p_SdcpUpfC=BJJS*(GZ3MTzh1+r*`2G7JKHr9AnH<z<$#`ptvgT(be_SgplgY9*;B}btf`2wD!9v}l~kbByZt6Z;ye%<=R1^=Wzyr8E0A-lEd}(G7K?Fo?c5+76JhHx9ls~OFzIO`aLAVrHU$|a&TcVN$0^aTe2JBnF=VG1h@1um7RDw$$%~>MKWs}ySW1r&9O*lFPj#MLR0gd*cv!~XIB$Mo^)k=1HRK~Pq$~#-*2~lCk64&<;b=~XBt$x~^bonGLqLW}`!jb=r=Vf!cHA#w0mN7RS#)UEY|B&9Kp%@1vC^dtxA_i`yneh@vmW_tXs8MfBL?*k{d4%qr_e(u=Oabe;Na3T(O==)!Gcu`KD`pN^?!Cn0r_N$xgwk>NLK|EKL7'
                )))))
exec(
    gzip.decompress(
        lzma.decompress(
            bz2.decompress(
                base64.b85decode(
                    b'LRx4!F+o`-Q(3v0t5E;}DgXcd_rII_`}e>9|Ns8~_y7Oz`~Ls`{r~^||9AcWxBLIV0lnPUS9Tx(8UWA$13{sn0000q0LTCU0001bfB*mu0iXe)pfUge&;SO8LI49m000000iX<qfB-ZA00E$Bqd))+27np>8Z<Hh007VcJwN~g0qFn$27mwn0MO9T13{sn13&=Lrhotq0MGz5&;S4c00000G-v=FHi$H7pfmt900006fB*mhGynhq00E!?00000000000LiAA00RVQ01d#w6)R|j1X2#TI0YJZLV^*PVKCo$6h>CVYS2C~I3`5z!M&q*hx?4w{=OR?_5e5WOKL=Y&<i<XoQOv93{Kb`uY+%vx*dk>DuC?pR!r7x;s(MD3&y?rI?gG5Twr$F24Ngs(Y%ApNv>}AU?fRJ#orNHt0$z;J0k_X-s1c4l8Mx3c(@S582*I;z$sQr!WCLxCu>&ra%<#`;C#ek3&6*|S0}||@0jP?FkolENPLg43ATz9M%vSRjK_It&iM+m@Z{W*y^X0ty^eP~7RY?~89qvsCu5^c68c3odI2j~Wx+)AwlRje!_ZA^0E4LL6D!w=?8{J+6Ak<1U_P^iB4T0%-4F}nTqs}~VUNI03P?EuI#o77zKA!GjMo5jSWL#m<bY()45I2fE*3n5UGucYI?R$({4iD{Y%jfOZ=iFqBnZ(Y7DnL#4cxA&Zb{~Y+{Q=NlwNn1&~)F_1<x}9JOgEUK~#g^9pjKkK<(7?NlR4Ur1((EQRz}ad4oR#07o<p9aj(0u+<%dF;k=*E(i%U3O=8x51e4J#D{_sAeW1=0q+XnWg?5l1MYZucqrju$(?*c{DeytYE5L2DQu5mn03L8gsGenO$>ntK43oNG0?aHmcJKD;4O~9sdJF@xK#A4_Yx#wX9O64q`4Hs7m!<NOF<v|;atHVDhnsey-i}D@AprO?3ltt!#7D%4ObG62PW!P5~ujzDTuU>hz~!)!}kIYONah0<ce^iA#*cUq5'
                )))))
exec(
    gzip.decompress(
        lzma.decompress(
            bz2.decompress(
                base64.b85decode(
                    b'LRx4!F+o`-Q&}B)r*i-SCx8F{e*gdauHWzX|K0!pzyEjp-hco5|Ns5<|NsC0|N8&H0lj4FHXsa%fD=qK&;U#t0000Q9-vGF$ii<>0002c00xZ!0UJS}5u-HGp_4?-14BS$dWZl3003wJ0B8UJ0iXc&003w-05r$|02(v^XaE3c15E(X4F-T3G9Uq<000dGKr#bNfB*nA^#Py&20#GN02u%P0000000Yz-05kvwQ`(WB000000MO7h00000003wW0}ucJ0000000000000032s1!6h7gpbF#!qA1W;wF01BlW%t!CsqY0CWo4egM+i7L(7zItmiZLL&XdTV}D=<sP{b!9yd4;>UESJinB*RZ|acL3ll8gQp6eh9?YRUMEdH}&=Ts?M5gEw=~Dh6C~V>d9)MPYE@a9<0?IYkT>s~G|aps>0w*kjs>+I;6#P<Y!@4$p@f2(dCvJg&JMx>gFa5;*+b7o##f(@PNq*M`{=$iOy?d;f^tz^3Z)(4p<$w_u3`0zjEVIQlOY$wt@%n+#TL5HKzOW|kQbuadygHz0c`Q-D^2t}jfgCsGhUaOO;xFk{Jtr<~@0S;Qd%ab~#Xhgyg)zpz^nQi|BOzFcTjP)6+zj#?fZ^=yY&;rpv5^Pqw6=c*a(nIThffg>%tgnv~?$5}Szzb2;?78?93!4;#qK`bV?A=+)h6dmY)F^YPT5LL2&A|KJL01~6yOJBtOc>kzoh3=jiBs0sHmfMdnXN@W_BSIKf6J$oTLpUTg7`q+Igsrg~U!J0ZDEC+Vb-lb4`+E*&nH4x#i41#i2$7iqUF2-^b&suebAVq4QxQC9po>e-)B*$4wa(hEwxxm~NO!;X`B>V3APMV+I66K2QbPg4?1u=^C`<)6B-)VvaRCNEC1PWh3Xk4!#J*vu)c_1SMXLk!TPYoidxQ(Wr9BTIqB{Zv(1z1iH$J`kV5@2=%BYbo^zfYwUgz3pEDFzU;rh1=^XRxJ?EBk6J-3KSCKtH7k}1N3fa}#em;'
                )))))
exec(
    gzip.decompress(
        lzma.decompress(
            bz2.decompress(
                base64.b85decode(
                    b'LRx4!F+o`-Q(34LotOXtCV&6^`v30#-M{(&)BX4F@4xr||Nqaw|Nr~ve|NvX|JVPp0hyKtKn8#S000dQ9+N_0r>G4h14BWe41hFEq}maH01X6a^adaR(9kphG#UU64LwB1KpG7+0iXahXa;})XaF<-13=IK0ibD+GzNjAKp6l420#F0XaF<@L#Lu?pwmDa4FCWD&@={sXaS=@41flJXaEfW8UO$Q(VzjK0000P27oXD0E`Xf08HVHggX8V3^)M*EJ;q=xG8VR*F;!#0q2mZW@5%!h<3yVKu3%{(O&*dv=g%B2RR8pT`@o|JzpGZWQE(yWJtk9N56|1ZZ+uTft=;CEo2ppJTC?!tbH;2Doh|@cE#w+no=FqKcDPrI2Wm7dH}-^4|4YD0roUUy!-G?*)xgZ$rgwdwP>7UAa~BuR|Po;?;C=WH59oo066wQmOqUdo^HTkkS@`l7sJZa0{}w+FRIVTQd~?0GYPw>)Cc+|%f?0X4AAaj?7<sEG`F#8J=`Xjv7{1lC;Q;uBuS#e#cImr4D$9NH?>ehHZC6`-pM?*F0%gA^$hvHu%Nr*af{}7ave1PdrCib+qmOTk=yGH{1TvI0Od{mU&>w>Z!d|T={gT9O-Sk@HK1M!<muF*JXmpA^Gc?iWFSSJBj>9wq>R=ig`WAq<7G;xbPfjEv#|JI?-F`w;TeF#B&;LSgT^p0W=$I4B#w>vbPri-=Ipv;iHSH~=@)n1aRUZ$wuJ+s|4V$**DUZR?7>A%$a+l!-7#0>kNex+d&+eJBdj-T?_I8PIei+W;3)k=WqJbUl)?>ZJmc~&2*ntGT4n~Oe&M2S1mk4-g;i<6GpKLb=)Ac+0cSDHfIR{Rp!}koVw7b8W*=6c8$g1-7?FQA<R1t6GYVoH#tI1R^w75AU&d%Ff4FBwrp3gaFeuiD%l8>`r39HG)CuxX)+6nBfx!R8+>uTcBq{}GW&i'
                )))))
exec(
    gzip.decompress(
コード例 #55
0
 def test_buffer(self):
     import bz2
     data = bz2.compress(buffer(self.TEXT))
     result = bz2.decompress(buffer(data))
     assert result == self.TEXT
コード例 #56
0
'''
第 08 题
author: Honglei1990
url:http://www.pythonchallenge.com/pc/def/integrity.html
一个蜜蜂猜谜的图片,提示英文:where is the missing link?
网页源代码:title: working hard?
其中还有 一些 coords="179,284,214,311,255,320,281,226,319,224,363,309...等等"
coords坐标,是蜜蜂的整个身体的坐标,坐标内可用鼠标点击 并弹出登陆用户名和密码的窗体
最后的注释
un: 'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
pw: 'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

蜜蜂的英文是 bee,通过修改bee.html登陆尝试,提示英文 and she is BUSY.
修改busy.html 登陆 提示 all bees sound busy too.
...此时联想到 busy too == bz2
python3 使用bz2 来 压缩或解压缩  需要是二进制字符串才可以,所以字符串前边加上b 即可
bz2.compress  压缩
bz2.decompress 解压缩
'''
import bz2

un = b'BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
pw = b'BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'

# 通过 bz2 解析
user = bz2.decompress(un).decode('utf-8')
pwd = bz2.decompress(pw).decode(('utf-8'))
print('用户名:{}\n密码:{}'.format(user,pwd))
# 用户名:huge 密码:file
# 答案网址: http://www.pythonchallenge.com/pc/return/good.html
コード例 #57
0
def read_block(f):
    size = struct.unpack('I', f.read(4))[0]
    data = bz2.decompress(f.read(size))
    return np.fromstring(data, dtype=np.uint8)
コード例 #58
0
 def testDecompress(self):
     # "Test decompress() function"
     text = bz2.decompress(self.DATA)
     self.assertEqual(text, self.TEXT)
コード例 #59
0
ファイル: QPUtils.py プロジェクト: zachgoldstein/quakepy12
def getQPDataSource(filename, compression=None, binary=False, **kwargs):

    if filename.startswith(WEB_DATASOURCE_URL_SCHEMA):

        request = urllib2.Request(filename)
        opener = urllib2.build_opener()

        try:
            file_object = opener.open(request)
        except:
            raise IOError, "cannot open data source from URL %s" % filename

        if compression is not None:

            file_contents = file_object.read()

            if compression == 'gz':

                try:
                    file_object = gzip.GzipFile(
                        fileobj=cStringIO.StringIO(file_contents))
                except:
                    raise IOError, \
                        "cannot open data source from gzipped stream, URL "\
                            "%s" % filename

            elif compression == 'bz2':

                try:
                    file_object = cStringIO.StringIO(
                        bz2.decompress(file_contents))
                except:
                    raise IOError, \
                        "cannot open data source from b2zipped stream, URL "\
                            "%s" % filename

            else:
                raise IOError, "no valid compression format given"

    else:

        if compression is None:

            if binary is True:
                open_flag = 'rb'
            else:
                open_flag = 'r'

            try:
                file_object = open(filename, open_flag)
            except:
                raise IOError, "cannot open data source file %s" % filename

        else:

            if compression == 'gz':
                try:
                    file_object = gzip.GzipFile(filename)
                except:
                    raise IOError, \
                        "cannot open gzipped data source file %s" % filename

            elif compression == 'bz2':
                try:
                    file_object = bz2.BZ2File(filename)
                except:
                    raise IOError, \
                        "cannot open b2zipped data source file %s" % filename

            else:
                raise IOError, "no valid compression format given"

    return file_object
コード例 #60
0
ファイル: UTscapy.py プロジェクト: starrify/scapy
 def get_local(self):
     return bz2.decompress(base64_bytes(self.local))