Essaie d'écrire une cPickle objet, mais à obtenir une "écriture" de l'attribut type de l'erreur

Lorsque vous essayez d'appliquer un peu de code que j'ai trouvé sur internet dans iPython, il est à venir avec une erreur:

TypeError                                 Traceback (most recent call last)
    <ipython-input-4-36ec95de9a5d> in <module>()
     13     all[i] = r.json()
     14 
---> 15 cPickle.dump(all, outfile)

TypeError: argument must have 'write' attribute

Voici ce que j'ai fait dans l'ordre:

outfile = "C:\John\Footy Bants\R COMPLAEX MATHS"

Ensuite, j'ai collé dans le code suivant:

import requests, cPickle, shutil, time

all = {}
errorout = open("errors.log", "w")

for i in range(600):
    playerurl = "http://fantasy.premierleague.com/web/api/elements/%s/"
    r = requests.get(playerurl % i)

    # skip non-existent players
    if r.status_code != 200: continue

    all[i] = r.json()

cPickle.dump(all, outfile)

Voici l'article original pour vous donner une idée de ce que je suis en train de réaliser:

http://billmill.org/fantasypl/

OriginalL'auteur Johnliquid | 2015-03-18