Stap 5: De Python Code
#import bibliotheek te doen van http-verzoeken:urllib2 importeren
#import pyserial bibliotheek
seriële importeren
#import tijd bibliotheek voor vertragingen
importeren
#import XML-parser genaamd minidom:
importeren uit xml.dom.minidom parseString
#Initialize voor de seriële verbinding in COM3 of welke poort je arduino gebruikt op 9600 baud-rate
ser seriële =. Serieel ("\\.\COM3", 9600)
Ik = 1
#delay voor stabiliteit terwijl verbinding wordt bereikt
time.Sleep(5)
terwijl ik == 1:
#download de rss-bestand voel je vrij om hier uw eigen rss-url
bestand = urllib2.urlopen ('http://news.sky.com/feeds/rss/world.xml')
#convert naar tekenreeks
gegevens = file.read()
#close het bestand
File.Close()
#parse de xml van de string
Dom = parseString(data)
#retrieve het eerste XML-code (< code > gegevens < / tag >) dat de parser vondsten met naam tagName tags om verschillende gegevens wijzigen
xmlTag = dom.getElementsByTagName('title')[2].toxml()
# de [2] geeft aan dat de 3e title-tag die wordt gevonden zal worden ontleed, tellen begint bij 0
#strip uit de tag (< code > gegevens < / tag >---> gegevens)
xmlData=xmlTag.replace('<title>','').replace (' </title >','')
#write de markering ~ tot seriële
ser.write('~')
time.Sleep(5)
#split de tekenreeks in afzonderlijke woorden
nums = xmlData.split(' ')
#loop totdat alle woorden in de tekenreeks zijn afgedrukt
voor num in nums:
#write 1 woord
ser.write(NUM)
# schrijven 1 ruimte
ser.write(' ')
# DE VERTRAGING IS NOODZAKELIJKE. Het voorkomt de overloop van de buffer van de arduino.
time.Sleep(2)
# schrijven ~ sluiten de tekenreeks en vertellen arduino informatie verzenden is voltooid
ser.write('~')
# 5 minuten wachten voordat hercontrole RSS en opnieuw verzenden van gegevens naar de Arduino
time.Sleep(300)