How to Talk To ThingSpeak With Python (A Memory/CPU Monitor) | Australian Robotics

#Pushing data to Thingspeak

# python

>>> import httplib, urllib

>>> params = urllib.urlencode({‘field1’: 12, ‘field2′: 11,’key’:’YOUR_API_KEY’})

>>> headers = {“Content-type”: “application/x-www-form-urlencoded”,”Accept”:

“text/plain”}

>>> conn = httplib.HTTPConnection(“api.thingspeak.com:80”)

>>> conn.request(“POST”, “/update”, params, headers)

>>> response = conn.getresponse()

>>> print response.status, response.reason

200 OK

>>> data = response.read()

>>> conn.close()

via How to Talk To ThingSpeak With Python (A Memory/CPU Monitor) | Australian Robotics.

Python Code – Raspberry Pi to ThingSpeak Temperature Sensor

import os

import glob

import time

import httplib, urllib

 

os.system(‘modprobe w1-gpio’)

os.system(‘modprobe w1-therm’)

 

base_dir = ‘/sys/bus/w1/devices/’

device_folder = glob.glob(base_dir + ’28*’)[0]

device_file = device_folder + ‘/w1_slave’

 

def read_temp_raw():

f = open(device_file, ‘r’)

lines = f.readlines()

f.close()

return lines

 

# Converts the raw temp to C and F

def read_temp():

lines = read_temp_raw()

while lines[0].strip()[-3:] != ‘YES’:

time.sleep(0.2)

lines = read_temp_raw()

equals_pos = lines[1].find(‘t=’)

if equals_pos != -1:

temp_string = lines[1][equals_pos+2:]

temp_c = float(temp_string) / 1000.0

temp_f = temp_c * 9.0 / 5.0 + 32.0

return temp_f

while True:

# This Code writes to Thing Speak

params = urllib.urlencode({‘field1’: (read_temp()), ‘key’:’keyhere’})

headers = {“Content-type”: “application/x-www-form-urlencoded”,”Accept”:

“text/plain”}

conn = httplib.HTTPConnection(“api.thingspeak.com:80”)

conn.request(“POST”, “/update”, params, headers)

response = conn.getresponse()

print response.status, response.reason

data = response.read()

conn.close()

# Writes the temp to the screen.

print(read_temp())

time.sleep(60)