Best Python code snippet using avocado_python
Day16.py
Source:Day16.py  
1from get_aoc import get_input2raw_hex_input = get_input(16)3#raw_hex_input = "D2FE28"4#raw_hex_input = "38006F45291200"5#raw_hex_input = "EE00D40C823060"6#raw_hex_input = "8A004A801A8002F478"7#raw_hex_input = "620080001611562C8802118E34"8#raw_hex_input = "C0015000016115A2E0802F182340"9#raw_hex_input = "A0016C880162017C3686B18A3D4780"10#raw_int_input = int(raw_hex_input, 16)11#raw_int_input = int(raw_hex_input, base=16)12#raw_hex_input = "C200B40A82"13#raw_hex_input = "04005AC33890"14#raw_hex_input = "880086C3E88112"15#raw_hex_input = "CE00C43D881120"16#raw_hex_input = "D8005AC2A8F0"17#raw_hex_input = "F600BC2D8F"18#raw_hex_input = "9C005AC2F8F0"19#raw_hex_input = "9C0141080250320F1802104A08"20raw_bin_input = ""21for x in raw_hex_input:22    raw_bin_input += str(bin(int(x,16)))[2:].zfill(4)  23#version = int(raw_bin_input[0:3], 2)24#type_ID = int(raw_bin_input[3:6], 2)25#rest = raw_bin_input[6::]26#len_rest = len(rest)27def get_parameters(remaining_binary):28    version = int(remaining_binary[0:3], 2)29    print("The version is " + str(version))30    type_ID = int(remaining_binary[3:6], 2)31    print("The type_ID is " + str(type_ID))32    rest = remaining_binary[6::]33    len_rest = len(rest)34    return version, type_ID, rest35stuff_left = True36place = 037version_total_count = 038rest = raw_bin_input39def get_version_subtotal (binary_string):40    if len(binary_string) < 11 :41        print("The string is too short, of length : " + str(len(binary_string)))42        return 043    version, type_ID, rest = get_parameters(binary_string)44    #version_total_count += version45    version_subtotal = version46    #print("The version total is " + str(version_total_count))47    if type_ID == 4:48        print("ID 4")49        literal_value = ""50        while rest[0] == "1":51            literal_value += rest[1:5]52            #if rest[0] == "1" : break53            #print("why didn't this work?")54            temp_rest = rest[5::]55            rest = temp_rest56        literal_value += rest[1:5]57        #if rest[0] == "1" : break58        #print("last loop, only once")59        temp_rest = rest[5::]60        rest = temp_rest61        int_literal_value = int(literal_value, 2)62        print("The literal value is " + str(int_literal_value))63    elif type_ID != 4:64        if rest[0] == "0": # Length Type ID65            total_length_in_bits = int(rest[1:16],2)66            temp_rest = rest[16::]67            rest = temp_rest68            #print("I don't know how to interprete this") # How come the string is 11 and 16 long69        elif rest [0] == "1":70            number_of_sub_packets = int(rest[1:12],2)71            print("There are x sub-packets : " + str(number_of_sub_packets))72            temp_rest = rest[12::]73            rest = temp_rest74            #print("so I got here")75        else:76            print("Something's fucked2")77    else:78        print("Something's fucked")79    return version + get_version_subtotal(rest)80total = get_version_subtotal(raw_bin_input)81print("Part 1: The running total of version numbers is : " + str(total)) #Answer = 90882#Part Two83print("PART TWO")84def literal_value (rest): #Type ID 485    literal_value = ""86    while rest[0] == "1":87        literal_value += rest[1:5]88        #if rest[0] == "1" : break89        print("why didn't this work?")90        temp_rest = rest[5::]91        rest = temp_rest92    literal_value += rest[1:5]93    #if rest[0] == "1" : break94    print("last loop, only once")95    temp_rest = rest[5::]96    rest = temp_rest97    int_literal_value = int(literal_value, 2)98    print("The literal value is " + str(int_literal_value))99    return int_literal_value, rest100def type_ID_0 (rest, number_of_sub_packets): # Sums values101    print("so I got here")102    running_loop = 0103    sub_packet_counter = 0104    while sub_packet_counter < number_of_sub_packets :105        print("Keep it running") # : " + str(len(binary_string)))106        packet_value, rest = get_packet_value(rest)107        running_loop += packet_value                108        print("Running loop has this value : " +str(running_loop))109        sub_packet_counter += 1110    return running_loop, rest111def type_ID_0b (rest): # Sums values112    print("so I got hereB")113    running_loop = 0114    while len(rest) >= 11:115        print("Keep it runningB") # : " + str(len(binary_string)))116        packet_value, rest = get_packet_value(rest)117        running_loop += packet_value                118        print("Running loop has this value : " +str(running_loop))119    return running_loop #, rest120def type_ID_1 (rest, number_of_sub_packets): # Sums values121    print("so NOW I got here")122    running_loop = 1123    sub_packet_counter = 0124    while sub_packet_counter < number_of_sub_packets :125        print("Keep NOW it running") # : " + str(len(binary_string)))126        packet_value, rest = get_packet_value(rest)127        running_loop = running_loop * packet_value                128        print("Running NOW loop has this value : " +str(running_loop))129        sub_packet_counter += 1130    return running_loop, rest131def type_ID_1b (rest): # Sums values132    print("so NOW I got hereB")133    running_loop = 1134    while len(rest) >= 11:135        print("Keep Now it runningB") # : " + str(len(binary_string)))136        packet_value, rest = get_packet_value(rest)137        running_loop = running_loop * packet_value                138        print("Running loopB has this value : " +str(running_loop))139    return running_loop #, rest140def type_ID_2 (rest, number_of_sub_packets): # Gives min value141    print("so NOW I got hereC")142    #running_loop = 1143    sub_packet_counter = 0144    packet_min_array = []145    while sub_packet_counter < number_of_sub_packets :146        print("Keep NOW it runningC") # : " + str(len(binary_string)))147        packet_value, rest = get_packet_value(rest)148        packet_min_array.append(packet_value)149        #running_loop = running_loop * packet_value                150        print("Array for min has these values : ")151        print(packet_min_array)152        sub_packet_counter += 1153    return min(packet_min_array), rest154def type_ID_2b (rest): # gives min value155    print("so NOW I got hereCc")156    packet_min_array = []157    while len(rest) >= 11:158        print("Keep Now it runningC") # : " + str(len(binary_string)))159        packet_value, rest = get_packet_value(rest)160        packet_min_array.append(packet_value)             161        print("Array for minB has these values : ")162        print(packet_min_array)163    return min(packet_min_array) #, rest164def type_ID_3 (rest, number_of_sub_packets): # Gives MAX value165    print("so NOW I got hereC")166    #running_loop = 1167    sub_packet_counter = 0168    packet_max_array = []169    while sub_packet_counter < number_of_sub_packets :170        print("Keep NOW it runningC") # : " + str(len(binary_string)))171        packet_value, rest = get_packet_value(rest)172        packet_max_array.append(packet_value)173        #running_loop = running_loop * packet_value                174        print("Array for max has these values : ")175        print(packet_max_array)176        sub_packet_counter += 1177    return max(packet_max_array), rest178def type_ID_3b (rest): # gives max value179    print("so NOW I got hereCc")180    packet_max_array = []181    while len(rest) >= 11:182        print("Keep Now it runningC") # : " + str(len(binary_string)))183        packet_value, rest = get_packet_value(rest)184        packet_max_array.append(packet_value)             185        print("Array for maxB has these values : ")186        print(packet_max_array)187    return min(packet_max_array) #, rest188def type_ID_5 (rest, number_of_sub_packets): # Gives 1 or 0 value189    print("so NOW I got hereD")190    #running_loop = 1191    sub_packet_counter = 0192    packet_array = []193    while sub_packet_counter < number_of_sub_packets :194        print("Keep NOW it runningD") # : " + str(len(binary_string)))195        packet_value, rest = get_packet_value(rest)196        packet_array.append(packet_value)197        #running_loop = running_loop * packet_value                198        print("Array for greater than has these values : ")199        print(packet_array)200        sub_packet_counter += 1201    if packet_array[0] > packet_array[1] : return 1, rest202    if packet_array[0] <= packet_array[1] : return 0, rest # How to combine this in 1 line?203def type_ID_5b (rest): # gives max value204    print("so NOW I got hereDd")205    packet_array = []206    while len(rest) >= 11:207        print("Keep Now it runningD") # : " + str(len(binary_string)))208        packet_value, rest = get_packet_value(rest)209        packet_array.append(packet_value)             210        print("Array for greater than has these values : ")211        print(packet_array)212    if packet_array[0] > packet_array[1] : return 1213    if packet_array[0] <= packet_array[1] : return 0214def type_ID_6 (rest, number_of_sub_packets): # Gives 1 or 0 value215    print("so NOW I got hereE")216    #running_loop = 1217    sub_packet_counter = 0218    packet_array = []219    while sub_packet_counter < number_of_sub_packets :220        print("Keep NOW it runningE") # : " + str(len(binary_string)))221        packet_value, rest = get_packet_value(rest)222        packet_array.append(packet_value)223        #running_loop = running_loop * packet_value                224        print("Array for less than has these values : ")225        print(packet_array)226        sub_packet_counter += 1227    if packet_array[0] < packet_array[1] : return 1, rest228    if packet_array[0] >= packet_array[1] : return 0, rest # How to combine this in 1 line?229def type_ID_6b (rest): # gives max value230    print("so NOW I got hereEe")231    packet_array = []232    while len(rest) >= 11:233        print("Keep Now it runningE") # : " + str(len(binary_string)))234        packet_value, rest = get_packet_value(rest)235        packet_array.append(packet_value)             236        print("Array for less than has these values : ")237        print(packet_array)238    if packet_array[0] < packet_array[1] : return 1239    if packet_array[0] >= packet_array[1] : return 0240def type_ID_7 (rest, number_of_sub_packets): # Gives 1 or 0 value241    print("so NOW I got hereF")242    #running_loop = 1243    sub_packet_counter = 0244    packet_array = []245    while sub_packet_counter < number_of_sub_packets :246        print("Keep NOW it runningF") # : " + str(len(binary_string)))247        packet_value, rest = get_packet_value(rest)248        packet_array.append(packet_value)249        #running_loop = running_loop * packet_value                250        print("Array for equals has these values : ")251        print(packet_array)252        sub_packet_counter += 1253    if packet_array[0] < packet_array[1] : return 1, rest254    if packet_array[0] >= packet_array[1] : return 0, rest # How to combine this in 1 line?255def type_ID_7b (rest): # gives max value256    print("so NOW I got hereFf")257    packet_array = []258    while len(rest) >= 11:259        print("Keep Now it runningF") # : " + str(len(binary_string)))260        packet_value, rest = get_packet_value(rest)261        packet_array.append(packet_value)             262        print("Array for equals has these values : ")263        print(packet_array)264    if packet_array[0] == packet_array[1] : return 1265    if packet_array[0] != packet_array[1] : return 0266def get_packet_value (binary_string):267    print("NEW ANALYSIS")268    int_literal_value = 0269    if len(binary_string) < 11 :270        print("The string is too short, of length : " + str(len(binary_string)))271        return 0272    version, type_ID, rest = get_parameters(binary_string)273    version_subtotal = version274    if type_ID == 4:275        print("ID 4")276        return literal_value (rest)   277    elif rest[0] == "0": # Length Type ID, 15 bits278        print("hEer")279        total_length_in_bits = int(rest[1:16],2)280        temp_rest = rest[16::]281        this_rest = temp_rest[:total_length_in_bits:]282        remaining_rest = temp_rest[total_length_in_bits::]283        if type_ID == 0 : sub_packet_valueB = type_ID_0b (this_rest)284        if type_ID == 1 : sub_packet_valueB = type_ID_1b (this_rest)285        if type_ID == 2 : sub_packet_valueB = type_ID_2b (this_rest)286        if type_ID == 3 : sub_packet_valueB = type_ID_3b (this_rest)287        #if type_ID == 4 : sub_packet_valueB = type_ID_4b (this_rest)288        if type_ID == 5 : sub_packet_valueB = type_ID_5b (this_rest)289        if type_ID == 6 : sub_packet_valueB = type_ID_6b (this_rest)290        if type_ID == 7 : sub_packet_valueB = type_ID_7b (this_rest)291        return sub_packet_valueB, remaining_rest292        print("then here")293        return this_call, remaining_rest294        #print("I don't know how to interprete this") # How come the string is 11 and 16 long295    elif rest[0] == "1": # Number of sub-packets, 11 bits296        number_of_sub_packets = int(rest[1:12],2)297        print("There are x sub-packets : " + str(number_of_sub_packets))298        temp_rest = rest[12::]299        rest = temp_rest300        if type_ID == 0 : return type_ID_0 (rest, number_of_sub_packets)301        if type_ID == 1 : return type_ID_1 (rest, number_of_sub_packets)302        if type_ID == 2 : return type_ID_2 (rest, number_of_sub_packets)303        if type_ID == 3 : return type_ID_3 (rest, number_of_sub_packets)304        #if type_ID == 4 : return type_ID_4 (rest, number_of_sub_packets)305        if type_ID == 5 : return type_ID_5 (rest, number_of_sub_packets)306        if type_ID == 6 : return type_ID_6 (rest, number_of_sub_packets)307        if type_ID == 7 : return type_ID_7 (rest, number_of_sub_packets)308    else:309        print("Something's fucked")310    return int_literal_value + get_packet_value(rest)311total_value, remaining_rest = get_packet_value(raw_bin_input)312print("The remaining rest is : " + str(remaining_rest))313print("Part 2: The value of the othermost packet is : " + str(total_value))314#Answer != 10626194228227315"""316while stuff_left == True:317    print("first time here")318    version, type_ID, rest = get_parameters(rest)319    version_total_count += version320    print("The version total is " + str(version_total_count))321    if type_ID == 4:322        print("ID 4")323        literal_value = ""324        while rest[0] == "1":325            literal_value += rest[1:5]326            #if rest[0] == "1" : break327            print("why didn't this work?")328            temp_rest = rest[5::]329            rest = temp_rest330        literal_value += rest[1:5]331        #if rest[0] == "1" : break332        print("last loop, only once")333        temp_rest = rest[5::]334        rest = temp_rest335        int_literal_value = int(literal_value, 2)336        print("The literal value is " + str(int_literal_value))337    elif type_ID != 4:338        if rest[0] == "0": # Length Type ID339            total_length_in_bits = int(rest[1:16],2)340            temp_rest = rest[(16 + total_length_in_bits)::]341            rest = temp_rest342            print("I don't know how to interprete this") # How come the string is 11 and 16 long343        elif rest [0] == "1":344            number_of_sub_packets = int(rest[1:12],2)345            print("There are x sub-packets : " + str(number_of_sub_packets))346            temp_rest = rest[(12 + 11*number_of_sub_packets)::]347            rest = temp_rest348            print("so I got here")349        elif rest [0] == "1":350            number_of_sub_packets = int(rest[1:12],2)351            print("There are x sub-packets : " + str(number_of_sub_packets))352            temp_rest = rest[(12 + 11*number_of_sub_packets)::]353            rest = temp_rest354            print("so I got here")355        elif rest [0] == "1":356            number_of_sub_packets = int(rest[1:12],2)357            print("There are x sub-packets : " + str(number_of_sub_packets))358            temp_rest = rest[(12 + 11*number_of_sub_packets)::]359            rest = temp_rest360            print("so I got here")361        elif rest [0] == "1":362            number_of_sub_packets = int(rest[1:12],2)363            print("There are x sub-packets : " + str(number_of_sub_packets))364            temp_rest = rest[(12 + 11*number_of_sub_packets)::]365            rest = temp_rest366            print("so I got here")367        elif rest [0] == "1":368            number_of_sub_packets = int(rest[1:12],2)369            print("There are x sub-packets : " + str(number_of_sub_packets))370            temp_rest = rest[(12 + 11*number_of_sub_packets)::]371            rest = temp_rest372            print("so I got here")373        elif rest [0] == "1":374            number_of_sub_packets = int(rest[1:12],2)375            print("There are x sub-packets : " + str(number_of_sub_packets))376            temp_rest = rest[(12 + 11*number_of_sub_packets)::]377            rest = temp_rest378            print("so I got here")379        elif rest [0] == "1":380            number_of_sub_packets = int(rest[1:12],2)381            print("There are x sub-packets : " + str(number_of_sub_packets))382            temp_rest = rest[(12 + 11*number_of_sub_packets)::]383            rest = temp_rest384            print("so I got here")385        elif rest [0] == "1":386            number_of_sub_packets = int(rest[1:12],2)387            print("There are x sub-packets : " + str(number_of_sub_packets))388            temp_rest = rest[(12 + 11*number_of_sub_packets)::]389            rest = temp_rest390            print("so I got here")391        else:392            print("Something's fucked2")393    else:394        print("Something's fucked")395    if len(rest) <= 10:396        stuff_left = False397        print("The string left is only this long : " + str(len(rest)))398"""399"""400hex_value = "1f"401print(len(hex_value))402int_value = int(hex_value, base=16)403print(bin(int_value))404binary_value = str(bin(int_value))[2:].zfill(4*2)405print(binary_value)406test = "D2FE28"407int_test = int(test, base=16)408print(int_test)409print(type(int_test))410bin_test = str(bin(int_test))[2:].zfill(len(test)*4)411print(bin_test)412print(type(bin_test))413#print(bin(test))...send-receive-file.py
Source:send-receive-file.py  
1###demo code provided by Steve Cope at www.steves-internet-guide.com2##email steve@steves-internet-guide.com3###Free to use for any purpose4""" Send File Using MQTT """5import time6import paho.mqtt.client as paho7import hashlib8broker="broker.hivemq.com"9broker="iot.eclipse.org"10broker="192.168.1.206"11filename="isawsomeone.jpg"12#filename="passwords.py"13topic="data/files"14qos=115data_block_size=200016fo=open(filename,"rb")17file_out="copy-"+filename18fout=open(file_out,"wb") #use a different filename19# for outfile as I'm rnning sender and receiver together2021def process_message(msg):22   """ This is the main receiver code23   """24   if len(msg)==200: #is header or end25      msg_in=msg.decode("utf-8")26      msg_in=msg_in.split(",,")27      if msg_in[0]=="end": #is it really last packet?28         in_hash_final=in_hash_md5.hexdigest()29         if in_hash_final==msg_in[2]:30            print("File copied OK -valid hash  ",in_hash_final)31         else:32            print("Bad file receive   ",in_hash_final)33         return False34      else:35         if msg_in[0]!="header":36            in_hash_md5.update(msg)37            return True38         else:39            return False40   else:41      in_hash_md5.update(msg)42      return True43#define callback44def on_message(client, userdata, message):45   time.sleep(1)46   #print("received message =",str(message.payload.decode("utf-8")))47   if process_message(message.payload):48      fout.write(message.payload)49def on_publish(client, userdata, mid):50    #logging.debug("pub ack "+ str(mid))51    client.mid_value=mid52    client.puback_flag=True  5354## waitfor loop55def wait_for(client,msgType,period=0.25,wait_time=40,running_loop=False):56    client.running_loop=running_loop #if using external loop57    wcount=0  58    while True:59        #print("waiting"+ msgType)60        if msgType=="PUBACK":61            if client.on_publish:        62                if client.puback_flag:63                    return True64     65        if not client.running_loop:66            client.loop(.01)  #check for messages manually67        time.sleep(period)68        #print("loop flag ",client.running_loop)69        wcount+=170        if wcount>wait_time:71            print("return from wait loop taken too long")72            return False73    return True 74def send_header(filename):75   header="header"+",,"+filename+",,"76   header=bytearray(header,"utf-8")77   header.extend(b','*(200-len(header)))78   print(header)79   c_publish(client,topic,header,qos)80def send_end(filename):81   end="end"+",,"+filename+",,"+out_hash_md5.hexdigest()82   end=bytearray(end,"utf-8")83   end.extend(b','*(200-len(end)))84   print(end)85   c_publish(client,topic,end,qos)86def c_publish(client,topic,out_message,qos):87   res,mid=client.publish(topic,out_message,qos)#publish88   if res==0: #published ok89      if wait_for(client,"PUBACK",running_loop=True):90         if mid==client.mid_value:91            print("match mid ",str(mid))92            client.puback_flag=False #reset flag93         else:94            raise SystemExit("not got correct puback mid so quitting")95         96      else:97         raise SystemExit("not got puback so quitting")98client= paho.Client("client-001")  #create client object client1.on_publish = on_publish                          #assign function to callback client1.connect(broker,port)                                 #establish connection client1.publish("data/files","on")  99######100client.on_message=on_message101client.on_publish=on_publish102client.puback_flag=False #use flag in publish ack103client.mid_value=None104#####105print("connecting to broker ",broker)106client.connect(broker)#connect107client.loop_start() #start loop to process received messages108print("subscribing ")109client.subscribe(topic)#subscribe110time.sleep(2)111start=time.time()112print("publishing ")113send_header(filename)114Run_flag=True115count=0116out_hash_md5 = hashlib.md5()117in_hash_md5 = hashlib.md5()118119while Run_flag:120   chunk=fo.read(data_block_size)121   if chunk:122      out_hash_md5.update(chunk) #update hash123      out_message=chunk124      #print(" length =",type(out_message))125      c_publish(client,topic,out_message,qos)126         127   else:128      #end of file so send hash129      out_message=out_hash_md5.hexdigest()130      send_end(filename)131      #print("out Message ",out_message)132      res,mid=client.publish("data/files",out_message,qos=1)#publish133      Run_flag=False134time_taken=time.time()-start135print("took ",time_taken)136time.sleep(4)137client.disconnect() #disconnect138client.loop_stop() #stop loop139fout.close()
...mqtt_sender_blob.py
Source:mqtt_sender_blob.py  
1# Copyright (c) 2017 Intel Corporation2#3# Licensed under the Apache License, Version 2.0 (the "License");4# you may not use this file except in compliance with the License.5# You may obtain a copy of the License at6#7#    http://www.apache.org/licenses/LICENSE-2.08#9# Unless required by applicable law or agreed to in writing, software10# distributed under the License is distributed on an "AS IS" BASIS,11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12# See the License for the specific language governing permissions and13# limitations under the License.14""" Send File Using MQTT """15import time16import paho.mqtt.client as paho17import hashlib18broker = "127.0.0.1"19filename = "blob.png"20topic = "proj_1/gw_1/blob0"21qos = 122data_block_size = 200023fo = open(filename, "rb")24def on_publish(client, userdata, mid):25    #logging.debug("pub ack "+ str(mid))26    client.mid_value = mid27    client.puback_flag = True28# waitfor loop29def wait_for(client, msgType, period=0.25, wait_time=40, running_loop=False):30    client.running_loop = running_loop  # if using external loop31    wcount = 032    while True:33        #print("waiting"+ msgType)34        if msgType == "PUBACK":35            if client.on_publish:36                if client.puback_flag:37                    return True38        if not client.running_loop:39            client.loop(.01)  # check for messages manually40        time.sleep(period)41        #print("loop flag ",client.running_loop)42        wcount += 143        if wcount > wait_time:44            print("return from wait loop taken too long")45            return False46    return True47def send_header(filename):48    header = "START" + ":" + filename + ":"49    header = bytearray(header, "utf-8")50    header.extend(b'-' * (0xFF - len(header)))51    print(header)52    c_publish(client, topic, header, qos)53def send_end(filename):54    end = "END" + ":" + out_hash_md5.hexdigest() + ":"55    end = bytearray(end, "utf-8")56    end.extend(b'-' * (0xFF - len(end)))57    print(end)58    c_publish(client, topic, end, qos)59def c_publish(client, topic, out_message, qos):60    res, mid = client.publish(topic, out_message, qos)  # publish61    if res == 0:  # published ok62        if wait_for(client, "PUBACK", running_loop=True):63            if mid == client.mid_value:64                print("match mid ", str(mid))65                client.puback_flag = False  # reset flag66            else:67                raise SystemExit("not got correct puback mid so quitting")68        else:69            raise SystemExit("not got puback so quitting")70# create client object client1.on_publish = on_publish71# #assign function to callback client1.connect(broker,port)72# #establish connection client1.publish("data/files","on")73client = paho.Client("client-001")74######75# client.on_message=on_message76client.on_publish = on_publish77client.puback_flag = False  # use flag in publish ack78client.mid_value = None79#####80print("connecting to broker ", broker)81client.connect(broker)  # connect82client.loop_start()  # start loop to process received messages83# print("subscribing ")84# client.subscribe(topic)#subscribe85time.sleep(2)86start = time.time()87print("publishing ")88send_header(filename)89Run_flag = True90count = 091out_hash_md5 = hashlib.md5()92# in_hash_md5 = hashlib.md5()93while Run_flag:94    chunk = fo.read(data_block_size)95    if chunk:96        out_hash_md5.update(chunk)  # update hash97        out_message = chunk98        #print(" length =",type(out_message))99        c_publish(client, topic, out_message, qos)100    else:101        # end of file so send hash102        out_message = out_hash_md5.hexdigest()103        send_end(filename)104        #print("out Message ",out_message)105        # res,mid=client.publish(topic,out_message,qos=1)#publish106        Run_flag = False107time_taken = time.time() - start108print("took ", time_taken)109time.sleep(4)110client.disconnect()  # disconnect111client.loop_stop()  # stop loop...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
