Anonymous avatar Anonymous committed 6f74def Merge

merge

Comments (0)

Files changed (28)

 #twitfetch tasks. they make call on twitter API to retreive data.
     "followers-lookup": {
         "task": "followerslookup.tasks.fetch",
-        "schedule": crontab(minute=12),
+        "schedule": crontab(minute=36),
     },
 }
Add a comment to this file

documentation/build/.doctrees/celery.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/djcelery.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/environment.pickle

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/externalapps.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/followerslookup.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/index.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/install.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/social_auth.doctree

Binary file modified.

Add a comment to this file

documentation/build/.doctrees/twitter.doctree

Binary file modified.

documentation/build/_sources/index.txt

 .. toctree::
    :maxdepth: 2
 
-   installation
-   ------------
-
    install
 
-   technical documentation
-   -----------------------
-
    followerslookup
 
    externalapps

documentation/build/_sources/install.txt

 
 And copy the project somewhere in your file system
 
->>> hg clone http://bitbucket.com/boblefrag/eggDiscover .
+>>> hg clone https://bitbucket.org/boblefrag/eggdiscover .
 
 Go in the created directory :
 
->>> cd eggDiscover
+>>> cd eggdiscover
 
 And install the requirements
 
->>> pip install requires.txt
+>>> pip install requirements.txt
 
 
 Configure your application

documentation/build/celery.html

 <dl class="method">
 <dt id="celery.app.App.worker_main">
 <tt class="descname">worker_main</tt><big>(</big><em>argv=None</em><big>)</big><a class="reference internal" href="_modules/celery/app.html#App.worker_main"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.app.App.worker_main" title="Permalink to this definition">¶</a></dt>
-<dd><p>Run <strong class="program">celeryd</strong> using <cite>argv</cite>.  Uses <tt class="xref py py-data docutils literal"><span class="pre">sys.argv</span></tt>
+<dd><p>Run <strong class="program">celeryd</strong> using <cite>argv</cite>.  Uses <a class="reference external" href="http://docs.python.org/library/sys.html#sys.argv" title="(in Python v2.7)"><tt class="xref py py-data docutils literal"><span class="pre">sys.argv</span></tt></a>
 if <cite>argv</cite> is not specified.</p>
 </dd></dl>
 
 
 <dl class="data">
 <dt id="celery.app.default_app">
-<tt class="descclassname">celery.app.</tt><tt class="descname">default_app</tt><em class="property"> = &lt;Celery: default:0x107830290&gt;</em><a class="headerlink" href="#celery.app.default_app" title="Permalink to this definition">¶</a></dt>
+<tt class="descclassname">celery.app.</tt><tt class="descname">default_app</tt><em class="property"> = &lt;Celery: default:0x2ff63d0&gt;</em><a class="headerlink" href="#celery.app.default_app" title="Permalink to this definition">¶</a></dt>
 <dd><p>Global fallback app instance.</p>
 </dd></dl>
 
 <col class="field-body" />
 <tbody valign="top">
 <tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>exc_info</strong> &#8211; The exception info tuple as returned by
-<tt class="xref py py-func docutils literal"><span class="pre">sys.exc_info()</span></tt>.</td>
+<a class="reference external" href="http://docs.python.org/library/sys.html#sys.exc_info" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">sys.exc_info()</span></tt></a>.</td>
 </tr>
 </tbody>
 </table>
 <dl class="attribute">
 <dt id="celery.datastructures.ExceptionInfo.tb">
 <tt class="descname">tb</tt><em class="property"> = None</em><a class="headerlink" href="#celery.datastructures.ExceptionInfo.tb" title="Permalink to this definition">¶</a></dt>
-<dd><p>Pickleable traceback instance for use with <tt class="xref py py-mod docutils literal"><span class="pre">traceback</span></tt></p>
+<dd><p>Pickleable traceback instance for use with <a class="reference external" href="http://docs.python.org/library/traceback.html#traceback" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">traceback</span></tt></a></p>
 </dd></dl>
 
 <dl class="attribute">
 <tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
 <li><strong>connection</strong> &#8211; Connection to the broker.</li>
 <li><strong>hostname</strong> &#8211; Hostname to identify ourselves as,
-by default uses the hostname returned by <tt class="xref py py-func docutils literal"><span class="pre">socket.gethostname()</span></tt>.</li>
+by default uses the hostname returned by <a class="reference external" href="http://docs.python.org/library/socket.html#socket.gethostname" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">socket.gethostname()</span></tt></a>.</li>
 <li><strong>enabled</strong> &#8211; Set to <tt class="xref py py-const docutils literal"><span class="pre">False</span></tt> to not actually publish any events,
 making <a class="reference internal" href="#celery.events.EventDispatcher.send" title="celery.events.EventDispatcher.send"><tt class="xref py py-meth docutils literal"><span class="pre">send()</span></tt></a> a noop operation.</li>
 <li><strong>channel</strong> &#8211; Can be used instead of <cite>connection</cite> to specify
 <span class="target" id="module-celery.log"></span><dl class="class">
 <dt id="celery.log.LoggingProxy">
 <em class="property">class </em><tt class="descclassname">celery.log.</tt><tt class="descname">LoggingProxy</tt><big>(</big><em>logger</em>, <em>loglevel=None</em><big>)</big><a class="reference internal" href="_modules/celery/log.html#LoggingProxy"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.log.LoggingProxy" title="Permalink to this definition">¶</a></dt>
-<dd><p>Forward file object to <tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt> instance.</p>
+<dd><p>Forward file object to <a class="reference external" href="http://docs.python.org/library/logging.html#logging.Logger" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt></a> instance.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-body" />
 <tbody valign="top">
 <tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
-<li><strong>logger</strong> &#8211; The <tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt> instance to forward to.</li>
+<li><strong>logger</strong> &#8211; The <a class="reference external" href="http://docs.python.org/library/logging.html#logging.Logger" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt></a> instance to forward to.</li>
 <li><strong>loglevel</strong> &#8211; Loglevel to use when writing messages.</li>
 </ul>
 </td>
 <dl class="class">
 <dt id="celery.routes.MapRoute">
 <em class="property">class </em><tt class="descclassname">celery.routes.</tt><tt class="descname">MapRoute</tt><big>(</big><em>map</em><big>)</big><a class="reference internal" href="_modules/celery/routes.html#MapRoute"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.routes.MapRoute" title="Permalink to this definition">¶</a></dt>
-<dd><p>Creates a router out of a <tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt>.</p>
+<dd><p>Creates a router out of a <a class="reference external" href="http://docs.python.org/library/stdtypes.html#dict" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a>.</p>
 </dd></dl>
 
 <dl class="function">
 
 <dl class="class">
 <dt id="celery.schedules.crontab">
-<em class="property">class </em><tt class="descclassname">celery.schedules.</tt><tt class="descname">crontab</tt><big>(</big><em>minute='*'</em>, <em>hour='*'</em>, <em>day_of_week='*'</em>, <em>nowfun=&lt;built-in method now of type object at 0x106b34420&gt;</em><big>)</big><a class="reference internal" href="_modules/celery/schedules.html#crontab"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.schedules.crontab" title="Permalink to this definition">¶</a></dt>
+<em class="property">class </em><tt class="descclassname">celery.schedules.</tt><tt class="descname">crontab</tt><big>(</big><em>minute='*'</em>, <em>hour='*'</em>, <em>day_of_week='*'</em>, <em>nowfun=&lt;built-in method now of type object at 0x7fd35e780c60&gt;</em><big>)</big><a class="reference internal" href="_modules/celery/schedules.html#crontab"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.schedules.crontab" title="Permalink to this definition">¶</a></dt>
 <dd><p>A crontab can be used as the <cite>run_every</cite> value of a
 <tt class="xref py py-class docutils literal"><span class="pre">PeriodicTask</span></tt> to add cron-like scheduling.</p>
 <p>Like a <em class="manpage">cron</em> job, you can specify units of time of when
 
 <dl class="class">
 <dt id="celery.worker.WorkController">
-<em class="property">class </em><tt class="descclassname">celery.worker.</tt><tt class="descname">WorkController</tt><big>(</big><em>concurrency=None</em>, <em>logfile=None</em>, <em>loglevel=None</em>, <em>send_events=None</em>, <em>hostname=None</em>, <em>ready_callback=&lt;function noop at 0x1077f96e0&gt;</em>, <em>embed_clockservice=False</em>, <em>pool_cls=None</em>, <em>consumer_cls=None</em>, <em>mediator_cls=None</em>, <em>eta_scheduler_cls=None</em>, <em>schedule_filename=None</em>, <em>task_time_limit=None</em>, <em>task_soft_time_limit=None</em>, <em>max_tasks_per_child=None</em>, <em>pool_putlocks=None</em>, <em>db=None</em>, <em>prefetch_multiplier=None</em>, <em>eta_scheduler_precision=None</em>, <em>disable_rate_limits=None</em>, <em>autoscale=None</em>, <em>autoscaler_cls=None</em>, <em>scheduler_cls=None</em>, <em>app=None</em><big>)</big><a class="reference internal" href="_modules/celery/worker.html#WorkController"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.worker.WorkController" title="Permalink to this definition">¶</a></dt>
+<em class="property">class </em><tt class="descclassname">celery.worker.</tt><tt class="descname">WorkController</tt><big>(</big><em>concurrency=None</em>, <em>logfile=None</em>, <em>loglevel=None</em>, <em>send_events=None</em>, <em>hostname=None</em>, <em>ready_callback=&lt;function noop at 0x2fbbb18&gt;</em>, <em>embed_clockservice=False</em>, <em>pool_cls=None</em>, <em>consumer_cls=None</em>, <em>mediator_cls=None</em>, <em>eta_scheduler_cls=None</em>, <em>schedule_filename=None</em>, <em>task_time_limit=None</em>, <em>task_soft_time_limit=None</em>, <em>max_tasks_per_child=None</em>, <em>pool_putlocks=None</em>, <em>db=None</em>, <em>prefetch_multiplier=None</em>, <em>eta_scheduler_precision=None</em>, <em>disable_rate_limits=None</em>, <em>autoscale=None</em>, <em>autoscaler_cls=None</em>, <em>scheduler_cls=None</em>, <em>app=None</em><big>)</big><a class="reference internal" href="_modules/celery/worker.html#WorkController"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.worker.WorkController" title="Permalink to this definition">¶</a></dt>
 <dd><p>Unmanaged worker instance.</p>
 <dl class="attribute">
 <dt id="celery.worker.WorkController.concurrency">
 <dl class="attribute">
 <dt id="celery.worker.WorkController.logger">
 <tt class="descname">logger</tt><em class="property"> = None</em><a class="headerlink" href="#celery.worker.WorkController.logger" title="Permalink to this definition">¶</a></dt>
-<dd><p>The <tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt> instance used for logging.</p>
+<dd><p>The <a class="reference external" href="http://docs.python.org/library/logging.html#logging.Logger" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">logging.Logger</span></tt></a> instance used for logging.</p>
 </dd></dl>
 
 <dl class="attribute">
 <dl class="function">
 <dt id="celery.utils.find_module">
 <tt class="descclassname">celery.utils.</tt><tt class="descname">find_module</tt><big>(</big><em>module</em>, <em>path=None</em>, <em>imp=None</em><big>)</big><a class="reference internal" href="_modules/celery/utils.html#find_module"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.utils.find_module" title="Permalink to this definition">¶</a></dt>
-<dd><p>Version of <tt class="xref py py-func docutils literal"><span class="pre">imp.find_module()</span></tt> supporting dots.</p>
+<dd><p>Version of <a class="reference external" href="http://docs.python.org/library/imp.html#imp.find_module" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">imp.find_module()</span></tt></a> supporting dots.</p>
 </dd></dl>
 
 <dl class="function">
 <dl class="function">
 <dt id="celery.utils.mattrgetter">
 <tt class="descclassname">celery.utils.</tt><tt class="descname">mattrgetter</tt><big>(</big><em>*attrs</em><big>)</big><a class="reference internal" href="_modules/celery/utils.html#mattrgetter"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#celery.utils.mattrgetter" title="Permalink to this definition">¶</a></dt>
-<dd><p>Like <tt class="xref py py-func docutils literal"><span class="pre">operator.itemgetter()</span></tt> but returns <tt class="xref py py-const docutils literal"><span class="pre">None</span></tt> on missing
+<dd><p>Like <a class="reference external" href="http://docs.python.org/library/operator.html#operator.itemgetter" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">operator.itemgetter()</span></tt></a> but returns <tt class="xref py py-const docutils literal"><span class="pre">None</span></tt> on missing
 attributes instead of raising <tt class="xref py py-exc docutils literal"><span class="pre">AttributeError</span></tt>.</p>
 </dd></dl>
 

documentation/build/djcelery.html

 <span id="app"></span><h2>APP<a class="headerlink" href="#module-djcelery.app" title="Permalink to this headline">¶</a></h2>
 <dl class="data">
 <dt id="djcelery.app.app">
-<tt class="descclassname">djcelery.app.</tt><tt class="descname">app</tt><em class="property"> = &lt;Celery: default:0x107830290&gt;</em><a class="headerlink" href="#djcelery.app.app" title="Permalink to this definition">¶</a></dt>
+<tt class="descclassname">djcelery.app.</tt><tt class="descname">app</tt><em class="property"> = &lt;Celery: default:0x2ff63d0&gt;</em><a class="headerlink" href="#djcelery.app.app" title="Permalink to this definition">¶</a></dt>
 <dd><p>The Django-Celery app instance.</p>
 </dd></dl>
 
 <dd><p>WorkerState(id, hostname, last_heartbeat)</p>
 </dd></dl>
 
+<dl class="attribute">
+<dt id="djcelery.models.result_model">
+<tt class="descclassname">djcelery.models.</tt><tt class="descname">result_model</tt><a class="headerlink" href="#djcelery.models.result_model" title="Permalink to this definition">¶</a></dt>
+<dd><p>alias of <a class="reference internal" href="#djcelery.models.TaskSetMeta" title="djcelery.models.TaskSetMeta"><tt class="xref py py-class docutils literal"><span class="pre">TaskSetMeta</span></tt></a></p>
+</dd></dl>
+
 </div>
 <div class="section" id="module-djcelery.mon">
 <span id="mon"></span><h2>Mon<a class="headerlink" href="#module-djcelery.mon" title="Permalink to this headline">¶</a></h2>

documentation/build/followerslookup.html

     <script type="text/javascript" src="_static/doctools.js"></script>
     <link rel="top" title="EggDiscover 0.1 documentation" href="index.html" />
     <link rel="next" title="External apps used in this project" href="externalapps.html" />
-    <link rel="prev" title="Welcome to EggDiscover’s documentation!" href="index.html" /> 
+    <link rel="prev" title="Installation" href="install.html" /> 
   </head>
   <body>
     <div class="related">
           <a href="externalapps.html" title="External apps used in this project"
              accesskey="N">next</a> |</li>
         <li class="right" >
-          <a href="index.html" title="Welcome to EggDiscover’s documentation!"
+          <a href="install.html" title="Installation"
              accesskey="P">previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li> 
       </ul>
 This set of utilities can be used as follow :</p>
 <div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="c"># first get an authenticated account as explained in authentication.py</span>
 <span class="gp">&gt;&gt;&gt; </span><span class="c"># then request the list of followers for a user :</span>
-<span class="gp">&gt;&gt;&gt; </span><span class="n">followers_ids</span> <span class="o">=</span> <span class="n">get_followers_ids</span><span class="p">(</span><span class="n">account</span><span class="p">,</span> <span class="s">&quot;NicolasSarcozy&quot;</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">followers_ids</span> <span class="o">=</span> <span class="n">get_followers_ids</span><span class="p">(</span><span class="n">account</span><span class="p">,</span> <span class="s">&quot;NicolasSarkozy&quot;</span><span class="p">)</span>
 <span class="gp">&gt;&gt;&gt; </span><span class="c"># then get extended informations about these users :</span>
 <span class="gp">&gt;&gt;&gt; </span><span class="n">followers_infos</span> <span class="o">=</span> <span class="n">get_followers_infos</span><span class="p">(</span><span class="n">account</span><span class="p">,</span> <span class="n">followers_ids</span><span class="p">)</span>
 <span class="gp">&gt;&gt;&gt; </span><span class="c"># you are then free to use the returned list as you see fit.</span>
 
 <dl class="function">
 <dt id="followerslookup.fetching.get_followers_infos">
-<tt class="descclassname">followerslookup.fetching.</tt><tt class="descname">get_followers_infos</tt><big>(</big><em>account</em>, <em>followers_ids</em><big>)</big><a class="reference internal" href="_modules/followerslookup/fetching.html#get_followers_infos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#followerslookup.fetching.get_followers_infos" title="Permalink to this definition">¶</a></dt>
+<tt class="descclassname">followerslookup.fetching.</tt><tt class="descname">get_followers_infos</tt><big>(</big><em>account</em>, <em>followers_ids</em>, <em>user</em><big>)</big><a class="reference internal" href="_modules/followerslookup/fetching.html#get_followers_infos"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#followerslookup.fetching.get_followers_infos" title="Permalink to this definition">¶</a></dt>
 <dd><p>This function take a list of user ids and request twitter for extended
 informations on these users.  Each request on the twitter API will return
 100 users. As we are limited to 350 request per hours.  so we can get 35,000
 users per hour.</p>
+<p>TODO : do not lookup user already in the database.</p>
 </dd></dl>
 
 <dl class="function">
 </ul>
 
   <h4>Previous topic</h4>
-  <p class="topless"><a href="index.html"
-                        title="previous chapter">Welcome to EggDiscover&#8217;s documentation!</a></p>
+  <p class="topless"><a href="install.html"
+                        title="previous chapter">Installation</a></p>
   <h4>Next topic</h4>
   <p class="topless"><a href="externalapps.html"
                         title="next chapter">External apps used in this project</a></p>
           <a href="externalapps.html" title="External apps used in this project"
              >next</a> |</li>
         <li class="right" >
-          <a href="index.html" title="Welcome to EggDiscover’s documentation!"
+          <a href="install.html" title="Installation"
              >previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li> 
       </ul>

documentation/build/genindex.html

   </dt>
 
       
+  <dt><a href="djcelery.html#djcelery.models.result_model">result_model (in module djcelery.models)</a>
+  </dt>
+
+      
   <dt><a href="celery.html#celery.exceptions.RetryTaskError">RetryTaskError</a>
   </dt>
 

documentation/build/install.html

 </pre></div>
 </div>
 <p>And copy the project somewhere in your file system</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">hg</span> <span class="n">clone</span> <span class="n">http</span><span class="p">:</span><span class="o">//</span><span class="n">bitbucket</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">boblefrag</span><span class="o">/</span><span class="n">eggDiscover</span> <span class="o">.</span>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">hg</span> <span class="n">clone</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">bitbucket</span><span class="o">.</span><span class="n">org</span><span class="o">/</span><span class="n">boblefrag</span><span class="o">/</span><span class="n">eggdiscover</span> <span class="o">.</span>
 </pre></div>
 </div>
 <p>Go in the created directory :</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">cd</span> <span class="n">eggDiscover</span>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">cd</span> <span class="n">eggdiscover</span>
 </pre></div>
 </div>
 <p>And install the requirements</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">pip</span> <span class="n">install</span> <span class="n">requires</span><span class="o">.</span><span class="n">txt</span>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">pip</span> <span class="n">install</span> <span class="n">requirements</span><span class="o">.</span><span class="n">txt</span>
 </pre></div>
 </div>
 </div>
Add a comment to this file

documentation/build/objects.inv

Binary file modified.

documentation/build/searchindex.js

-Search.setIndex({objects:{"":{celery:[6,0,1,""],twitter:[2,0,1,""],djcelery:[3,0,1,""],social_auth:[5,0,1,""]},"djcelery.app":{app:[3,6,1,""]},"celery.datastructures.TokenBucket":{expected_time:[6,3,1,""],timestamp:[6,2,1,""],capacity:[6,2,1,""],can_consume:[6,3,1,""],fill_rate:[6,2,1,""]},"celery.log":{SilenceRepeated:[6,4,1,""],LoggingProxy:[6,4,1,""]},"celery.events.EventReceiver":{process:[6,3,1,""],capture:[6,3,1,""],consumer:[6,3,1,""]},"celery.log.LoggingProxy":{close:[6,3,1,""],isatty:[6,3,1,""],writelines:[6,3,1,""],flush:[6,3,1,""]},"celery.execute":{apply:[6,1,1,""],apply_async:[6,1,1,""]},"social_auth.models":{UserSocialAuth:[5,4,1,""],Nonce:[5,4,1,""],Association:[5,4,1,""]},"celery.worker.WorkController":{ready_queue:[6,2,1,""],mediator:[6,2,1,""],loglevel:[6,2,1,""],stop:[6,3,1,""],embed_clockservice:[6,2,1,""],terminate:[6,3,1,""],start:[6,3,1,""],process_task:[6,3,1,""],concurrency:[6,2,1,""],send_events:[6,2,1,""],logger:[6,2,1,""],logfile:[6,2,1,""],consumer:[6,2,1,""],pool:[6,2,1,""]},"celery.utils.mpromise":{evaluated:[6,2,1,""]},"djcelery.loaders.DjangoLoader":{on_task_init:[3,3,1,""],on_worker_init:[3,3,1,""],read_configuration:[3,3,1,""],on_process_cleanup:[3,3,1,""]},"djcelery.models":{TaskState:[3,4,1,""],PeriodicTask:[3,4,1,""],TaskMeta:[3,4,1,""],TaskSetMeta:[3,4,1,""],IntervalSchedule:[3,4,1,""],CrontabSchedule:[3,4,1,""],WorkerState:[3,4,1,""],PeriodicTasks:[3,4,1,""]},"celery.events":{EventDispatcher:[6,4,1,""],EventReceiver:[6,4,1,""],Event:[6,1,1,""]},"celery.events.EventDispatcher":{close:[6,3,1,""],send:[6,3,1,""]},"celery.loaders":{get_loader_cls:[6,1,1,""]},"social_auth.models.UserSocialAuth":{expiration_delta:[5,3,1,""]},"social_auth.context_processors":{social_auth_backends:[5,1,1,""],backends_data:[5,1,1,""],social_auth_by_name_backends:[5,1,1,""],social_auth_by_type_backends:[5,1,1,""]},"djcelery.views":{task_webhook:[3,1,1,""],registered_tasks:[3,1,1,""],apply:[3,1,1,""],task_status:[3,1,1,""],task_view:[3,1,1,""],is_task_successful:[3,1,1,""]},"celery.app":{App:[6,4,1,""],app_or_default:[6,1,1,""],default_app:[6,6,1,""],default_loader:[6,6,1,""]},celery:{datastructures:[6,0,1,""],utils:[6,0,1,""],states:[6,0,1,""],platforms:[6,0,1,""],contrib:[6,0,1,""],log:[6,0,1,""],loaders:[6,0,1,""],signals:[6,0,1,""],local:[6,0,1,""],app:[6,0,1,""],beat:[6,0,1,""],worker:[6,0,1,""],db:[6,0,1,""],routes:[6,0,1,""],registry:[6,0,1,""],schedules:[6,0,1,""],execute:[6,0,1,""],task:[6,0,1,""],decorators:[6,0,1,""],events:[6,0,1,""],exceptions:[6,0,1,""],messaging:[6,0,1,""]},"social_auth.admin":{UserSocialAuthOption:[5,4,1,""],NonceOption:[5,4,1,""],AssociationOption:[5,4,1,""]},"celery.platforms.PIDFile":{remove_if_stale:[6,3,1,""],is_locked:[6,3,1,""],acquire:[6,3,1,""],remove:[6,3,1,""],read_pid:[6,3,1,""],release:[6,3,1,""],path:[6,2,1,""]},"celery.platforms":{Signals:[6,4,1,""],set_effective_user:[6,1,1,""],get_fdmax:[6,1,1,""],create_pidlock:[6,1,1,""],parse_uid:[6,1,1,""],setegid:[6,1,1,""],set_mp_process_title:[6,1,1,""],set_process_title:[6,1,1,""],seteuid:[6,1,1,""],parse_gid:[6,1,1,""],detached:[6,1,1,""],LockFailed:[6,5,1,""],PIDFile:[6,4,1,""]},"celery.platforms.Signals":{ignore:[6,3,1,""],reset:[6,3,1,""],supported:[6,3,1,""],update:[6,3,1,""],signum:[6,3,1,""]},"followerslookup.fetching":{save_users:[1,1,1,""],save_user:[1,1,1,""],get_followers_ids:[1,1,1,""],get_followers_infos:[1,1,1,""]},"social_auth.fields":{JSONField:[5,4,1,""]},twitter:{TwitterError:[2,5,1,""],write_token_file:[2,1,1,""],Twitter:[2,4,1,""],TwitterHTTPError:[2,5,1,""],TwitterStream:[2,4,1,""],OAuth:[2,4,1,""],TwitterResponse:[2,4,1,""],NoAuth:[2,4,1,""],read_token_file:[2,1,1,""],UserPassAuth:[2,4,1,""]},"djcelery.loaders":{autodiscover:[3,1,1,""],find_related_module:[3,1,1,""],DjangoLoader:[3,4,1,""]},"celery.worker":{WORKER_SIGIGNORE:[6,6,1,""],process_initializer:[6,1,1,""],WORKER_SIGRESET:[6,6,1,""],WorkController:[6,4,1,""]},"celery.app.App":{Task:[6,2,1,""],Beat:[6,3,1,""],Worker:[6,3,1,""],set_current:[6,3,1,""],task:[6,3,1,""],TaskSet:[6,3,1,""],worker_main:[6,3,1,""],create_task_cls:[6,3,1,""]},"celery.datastructures":{ConfigurationView:[6,4,1,""],LimitedSet:[6,4,1,""],ExceptionInfo:[6,4,1,""],AttributeDict:[6,4,1,""],AttributeDictMixin:[6,4,1,""],TokenBucket:[6,4,1,""],DictAttribute:[6,4,1,""],LRUCache:[6,4,1,""]},"celery.utils":{lpmerge:[6,1,1,""],instantiate:[6,1,1,""],fun_takes_kwargs:[6,1,1,""],truncate_text:[6,1,1,""],find_module:[6,1,1,""],get_symbol_by_name:[6,1,1,""],cry:[6,1,1,""],get_cls_by_name:[6,1,1,""],mpromise:[6,4,1,""],noop:[6,1,1,""],get_full_cls_name:[6,1,1,""],textindent:[6,1,1,""],promise:[6,4,1,""],maybe_promise:[6,1,1,""],chunks:[6,1,1,""],kwdict:[6,1,1,""],import_from_cwd:[6,1,1,""],padlist:[6,1,1,""],firstmethod:[6,1,1,""],mattrgetter:[6,1,1,""],first:[6,1,1,""]},"celery.routes":{MapRoute:[6,4,1,""],prepare:[6,1,1,""]},"celery.beat.Scheduler":{schedule:[6,2,1,""],sync_every:[6,2,1,""],max_interval:[6,2,1,""],Entry:[6,2,1,""],logger:[6,2,1,""],tick:[6,3,1,""]},"celery.schedules.crontab":{is_due:[6,3,1,""],remaining_estimate:[6,3,1,""],day_of_week:[6,2,1,""],minute:[6,2,1,""],hour:[6,2,1,""]},"celery.beat.ScheduleEntry":{name:[6,2,1,""],schedule:[6,2,1,""],update:[6,3,1,""],args:[6,2,1,""],last_run_at:[6,2,1,""],next:[6,3,1,""],is_due:[6,3,1,""],total_run_count:[6,2,1,""],kwargs:[6,2,1,""],options:[6,2,1,""]},"social_auth.store":{DjangoOpenIDStore:[5,4,1,""]},"celery.exceptions":{NotRegistered:[6,5,1,""],TaskRevokedError:[6,5,1,""],MaxRetriesExceededError:[6,5,1,""],TimeoutError:[6,5,1,""],NotConfigured:[6,5,1,""],ImproperlyConfigured:[6,5,1,""],WorkerLostError:[6,5,1,""],SoftTimeLimitExceeded:[6,5,1,""],RetryTaskError:[6,5,1,""],QueueNotFound:[6,5,1,""],AlreadyRegistered:[6,5,1,""],TimeLimitExceeded:[6,5,1,""],SystemTerminate:[6,5,1,""]},"celery.datastructures.ExceptionInfo":{tb:[6,2,1,""],exception:[6,2,1,""],traceback:[6,2,1,""],type:[6,2,1,""]},"twitter.TwitterResponse":{rate_limit_reset:[2,2,1,""],rate_limit_remaining:[2,2,1,""]},"social_auth.utils":{sanitize_redirect:[5,1,1,""],group_backend_by_type:[5,1,1,""],setting:[5,1,1,""],sanitize_log_data:[5,1,1,""]},"djcelery.utils":{naturaldate:[3,1,1,""]},"celery.task":{periodic_task:[6,1,1,""],task:[6,1,1,""],ping:[6,1,1,""]},"social_auth.fields.JSONField":{value_from_object:[5,3,1,""],validate:[5,3,1,""],value_to_string:[5,3,1,""],to_python:[5,3,1,""],get_prep_value:[5,3,1,""]},followerslookup:{fetching:[1,0,1,""],authentication:[1,0,1,""]},"celery.schedules.crontab_parser":{ParseException:[6,5,1,""]},"celery.schedules":{crontab:[6,4,1,""],ParseException:[6,5,1,""],crontab_parser:[6,4,1,""]},djcelery:{views:[3,0,1,""],models:[3,0,1,""],app:[3,0,1,""],loaders:[3,0,1,""],admin:[3,0,1,""],snapshot:[3,0,1,""],mon:[3,0,1,""],urls:[3,0,1,""],admin_utils:[3,0,1,""],utils:[3,0,1,""]},social_auth:{context_processors:[5,0,1,""],views:[5,0,1,""],admin:[5,0,1,""],fields:[5,0,1,""],utils:[5,0,1,""],signals:[5,0,1,""],models:[5,0,1,""],urls:[5,0,1,""],store:[5,0,1,""]},"celery.registry":{tasks:[6,6,1,""]},"social_auth.views":{disconnect:[5,1,1,""],complete:[5,1,1,""],associate_complete:[5,1,1,""],associate:[5,1,1,""],auth:[5,1,1,""],complete_process:[5,1,1,""],auth_process:[5,1,1,""],dsa_view:[5,1,1,""],auth_complete:[5,1,1,""]},"celery.beat":{ScheduleEntry:[6,4,1,""],EmbeddedService:[6,1,1,""],Scheduler:[6,4,1,""],SchedulingError:[6,5,1,""]},"celery.states":{state:[6,4,1,""],precedence:[6,1,1,""],PRECEDENCE:[6,6,1,""]},"celery.local":{Proxy:[6,4,1,""],try_import:[6,1,1,""]},"social_auth.store.DjangoOpenIDStore":{storeAssociation:[5,3,1,""],useNonce:[5,3,1,""],getAssociation:[5,3,1,""]},"followerslookup.authentication":{get_auth:[1,1,1,""],get_account:[1,1,1,""],get_twitter_account:[1,1,1,""]},"celery.datastructures.LimitedSet":{clear:[6,3,1,""],add:[6,3,1,""],pop_value:[6,3,1,""],first:[6,2,1,""]}},terms:{represent:6,all:[6,3,1,5,7],code:[6,3,5],forget:7,"0x10c9996e0":[],queri:1,untrust:5,global:6,save_us:1,improperli:6,last_upd:3,per:1,abil:6,follow:[6,1,7],"0x10f7b5510":[],oldest:6,token_kei:2,task_webhook:3,privat:5,app_or_default:6,depend:[2,5],appload:6,tweet:2,umask:6,specif:6,send:[6,2,5],"__cmp__":6,init:7,program:6,scheduleentri:6,under:5,exit:6,getargspec:6,sent:6,crontabschedul:3,digit:6,sourc:[6,3,1,5,7],everi:[6,3],string:[6,3,2,1,5],fals:[6,2,5],webhook:3,get_followers_info:1,next_time_to_run:6,util:[1,2,3,4,5,6],context_processor:5,"0x10ff3b6e0":[],wikipedia:6,facebook:5,billybob:2,seteuid:6,failur:6,retriev:[2,5],exact:6,tri:3,"0x104485490":[],foo:6,magic:6,max_tasks_per_child:6,max_interv:6,in_sighandl:6,friends_timelin:2,list:[6,3,2,1,5],iter:[6,2],"try":6,item:[6,5],concurr:6,unmanag:6,stderr:6,sleep:6,superced:3,retun:5,exit_handl:6,dict:[6,2,5],pleas:[6,3],multiprocess:[6,3],trend:2,natur:3,periodictask:[6,3],direct:2,numspec:6,split:6,cron:6,second:[6,2,5],"0x1040bbf90":[],"0x1081d6810":[],pass:2,crontab_pars:6,billysbud:2,excit:2,index:[6,0],twitter_search:2,"_field":6,clock:6,introspect:6,abl:7,argspec:6,overload:6,twitterstream:[2,4],delet:6,version:6,primary_kei:5,"new":[6,2,5],ever:2,"public":2,celery_rout:6,xml:2,full:6,timeouterror:6,run_everi:6,httpresponseservererror:5,gener:[6,2,5,7],task_statu:3,here:[6,2],set_process_titl:6,shouldn:3,send_ev:6,witch:1,argv:6,task_nam:3,trunk:5,path:[6,5],becom:[6,5],valu:[6,2,5,7],acquir:6,convert:[2,3,5],produc:6,copyright:6,task_id:[6,3],prognam:6,anymor:6,step:6,celeryd_log_fil:6,queue:[6,3],datetim:3,related_nam:3,behav:2,social:[0,4,5],action:6,propagate_st:6,implement:6,pop_valu:6,celery_result_backend:6,ourselv:6,control:6,via:[6,3],useful:1,extra:6,revok:6,appli:[6,3],app:[6,0,3,4],prefer:[2,3],deprec:[6,2],api:[2,1,7],celerybeat:6,costanza:6,instal:[6,0,7],total:[6,2],establish:6,unit:6,fun_takes_kwarg:6,from:[6,2,3,5],would:[6,5],joespassword:2,etc:3,current_app:6,two:6,next:[6,0,7],few:[2,5],live:3,social_auth_by_type_backend:5,call:[6,2,3],softtimelimitexceed:6,taken:6,djangoopenidstor:5,type:[6,5,7],until:2,more:6,logfil:6,nicolassarcozi:1,"0x1028868d0":[],validationerror:5,get_followers_id:1,detail:6,stolen:6,server_url:5,site:7,warn:6,isatti:6,templat:5,relai:5,particular:[6,2,7],actual:6,get_prep_valu:5,hold:[6,2],cach:6,must:[6,1],none:[6,2,5],rook:[],nonc:5,hour:[6,3,1],redirect_to:5,alia:6,prepar:6,work:[6,3],uniqu:5,dev:2,descriptor:6,remain:2,kwarg:[6,3,5],can:[6,2,1,5,7],learn:2,caution:3,purpos:6,root:7,fetch:[0,1,7],def:[6,3],overrid:5,sighup:6,sqlite:7,malform:5,stream:2,give:[6,2,7],process:[6,1,5,7],lockfail:6,registr:5,indic:0,try_import:6,critic:6,liter:6,auto_cr:5,want:[6,7],serial:[6,5],occur:6,solem:6,delai:6,alwai:[6,7],sundai:6,usenonc:5,"0x10c9ccd90":[],value_to_str:5,disable_rate_limit:6,ping:6,modulenam:6,georg:6,write:[6,2,7],how:[6,2],djangoload:3,becuas:5,fulli:2,instead:6,csv:7,config:6,twitterrespons:2,updat:[6,7],map:6,"0x10f1b81d0":[],resourc:6,timedelta:[6,5],max:6,"0x10e791510":[],after:6,decor:[6,3,4,5],superus:7,befor:[6,3,5],membership:6,socket:6,celeryd:[6,7],discard:6,date:[6,3],social_auth_backend:5,underscor:5,data:[6,2,5],httpheader:2,httplib:2,"0x10c9796e0":[],github:6,gethostnam:6,third:[6,5],loglevel:6,secur:2,setproctitl:6,django:[0,3,4,7,5],inform:[6,1,7],preced:6,environ:[6,3,7],allow:5,anoth:6,callabl:6,lru:6,fallback:6,lambda:5,retval:3,order:7,oper:6,listnam:2,help:2,improperlyconfigur:6,over:6,midnight:6,soon:6,to_python:5,screen_nam:2,unique_for_year:5,help_text:5,amqp:6,still:6,paramet:[6,3,1,5],divis:6,group:[6,5],tsk:[],fit:1,retri:[6,3],get_auth:1,fix:6,"0x1081a6f50":[],twitter_us:1,him:1,platform:[6,4],rate_limit_reset:2,pend:6,restart:6,maprout:6,bin:7,pad:6,hidden:3,main:6,might:[6,7],memoiz:6,google_oauth2:5,recip:6,them:2,good:6,"return":[6,3,2,1,5],truncate_text:6,thei:5,python:[6,2,5,7],timestamp:[6,5],safe:[6,3],twitterus:7,dai:6,auth:[0,2,1,4,5],"break":2,subtask:6,promis:6,verifi:6,own:2,detach:6,minimalist:2,term:6,da0b:6,grammar:6,name:[6,2,3,5],edit:[6,5,7],simpl:5,"0x102c295f0":5,datastructur:[6,4],authent:[0,2,1,4,5],tstamp:3,separ:6,followers_info:1,timeout:6,each:[6,1,5,7],found:[6,5],unicod:6,quarter:6,attributeerror:6,truncat:6,mean:6,"0x1099a6450":[],week:6,harm:5,remove_if_stal:6,replac:5,chunk:6,timelin:2,rate_limit_remain:2,continu:6,crontab:6,consum:[6,7],wrap:6,on_worker_init:3,embeddedservic:6,expect:6,our:6,happen:6,event:[6,4],notmyapp:5,out:6,variabl:6,silencerep:6,queuenotfound:6,safeti:6,referenc:5,miss:6,access:[6,2,3,7],remaining_estim:6,set_effective_us:6,publish:6,max_retri:6,rel:[6,5],print:5,parseexcept:6,"_default":2,ready_st:6,admin_sit:5,intervalschedul:3,model:[3,1,4,5],retrytaskerror:6,proxi:6,twitter_consumer_kei:7,advanc:6,usersocialauthopt:5,workerlosterror:6,given:[6,3,1,5],free:1,"0x10c5f9dd0":[],consumer_secret:2,reason:[6,7],base:[6,2],process_task:6,dictionari:[6,3],element:6,ask:[6,7],org:6,upon:7,featur:[6,2],runserv:7,thrown:2,indent:6,thread:6,launch:[0,1,7],rule:6,just:[6,5],traceback:[6,3],put:7,count:6,keep:6,filter:7,thing:[2,4,7],rais:[6,2,3,5],isn:5,router:6,ensur:3,think:2,urlconf:3,first:[6,2,1,5],feed:6,respond:6,rang:6,note:[3,5],socialuserauth:1,suffix:6,directli:6,exchang:[6,3],misc:6,number:[6,5],system:[6,7],l36:5,mai:6,instruct:7,alreadi:[6,1],done:3,least:6,blank:5,installed_app:3,open:[6,7],primari:6,worker_sigreset:6,size:6,simultan:6,differ:[5,7],token_bucket:6,fair:6,citi:6,unknown:6,interact:2,capac:6,messag:[6,2],sigttin:6,pickleabl:6,max_length:5,too:6,statement:5,termin:6,conveni:6,routing_kei:[6,3],store:[6,2,5],adher:6,option:[6,5],complete_process:5,copi:7,specifi:6,sync:6,"var":6,"short":6,hup:6,signum:6,shelv:6,nobodi:6,grace:6,rss:6,kind:6,buffer_while_offlin:6,doubli:6,keyword:[6,3],provid:[6,1,5],expr:6,remov:6,onc:[6,7],rate:[6,2],structur:[6,5,7],charact:6,project:[0,4,7],friend:2,str:6,keyboardinterrupt:6,posit:6,minut:[6,3],"0x10cf80310":[],"0x10afac6e0":[],"0x10dde0ed0":[],browser:[5,7],exception_st:6,kwdict:6,max_:6,terribl:2,arg:[6,3,5],argument:[6,3],sigmap:6,raw:2,expir:[6,3,5],have:[6,5],"__main__":6,need:[6,0,1,5,7],value_from_object:5,"null":5,task_view:3,autodiscov:3,mattrgett:6,maxretriesexceedederror:6,built:6,equival:6,alias:6,padlist:6,rout:[6,4],client:6,celery_trace_app:6,also:[6,2],without:3,take:[6,1],which:[6,2],egdiscov:7,attributedict:6,channel:6,sig_ign:6,sure:[6,5],unless:6,distribut:6,trace:6,shall:6,buffer:6,object:[1,2,3,4,5,6],can_consum:6,discov:3,twitter_consumer_secret:7,most:6,node_id:6,direct_messag:2,bsd:6,"0x10bcde420":[],"class":[6,2,3,4,5],prematur:6,"0x10a039420":[],don:7,exc:6,db_column:5,url:[6,3,4,5],doc:2,clear:6,later:6,request:[1,2,3,5,6,7],uri:2,doe:[6,3],pidfil:6,part:7,snapshot:[3,4],runtim:3,clean:[6,5],pattern:6,nyc:6,pars:[6,2,1],associationopt:5,left:6,salt:5,dow:6,dot:6,naturald:3,autoscaler_cl:6,text:[6,2],"__str__":6,consult:6,prefetch_multipli:6,celery_queu:6,twittererror:2,somewher:7,session:5,migrat:7,earth:6,find:[6,2,3],redirect:5,current:[6,2,5],onli:[6,7],locat:6,set_as_curr:6,pretti:[6,2],"0x10704a510":[],"0x10d88a490":[],configur:[6,0,3,5,7],consumer_kei:2,forev:2,should:6,usersocialauth:[1,5],eventdispatch:6,set_mp_process_titl:6,is_success:3,"0x107830290":[6,3],local:[6,4],unique_for_d:5,info:[6,7],is_lock:6,db_tablespac:5,get:[0,1,2,3,6,7],beat:[6,4],sanitize_log_data:5,"0x10750b420":[],express:6,stop:6,account:[1,5,7],get_full_cls_nam:6,cannot:7,rest:[2,1,7],csrf:5,vost:7,v_host:7,requir:[6,0,7],enabl:[6,2,3],cry:6,yield:2,method:[6,2,5],write_token_fil:2,limitedset:6,social_auth_by_name_backend:5,signal_nam:6,rune:7,integr:3,mediat:6,contain:[6,3],mediator_cl:6,loggingproxi:6,"0x106b34420":6,where:[6,5],wrote:2,view:[6,3,4,5],wiki:6,set:[6,3,1,5,7],human:3,dump:5,expected_tim:6,task_soft_time_limit:6,maximum:6,model_inst:5,atexit:6,see:[6,1,5,7],nowfun:6,respons:[6,2,3,4],close:[6,7],bee:7,kwlist:6,planet:6,statu:3,yer:2,kei:[6,2,3,5,7],on_process_cleanup:3,databas:[1,5,7],someth:2,sigint:6,con_secret:2,boblefrag:7,taskmeta:3,written:6,won:5,turn:3,between:[6,5],"import":6,lazi:6,bunch:2,email:2,attribut:[6,2,5],never:6,find_related_modul:3,extend:1,screen:2,gethead:2,alreadyregist:6,job:6,joe:2,frozenset:6,disconnect:5,classnam:6,get_symbol_by_nam:6,monitor:[6,7],jsonfield:5,last:6,tokensin:6,admin:[3,4,7,5],howev:6,rabbitmq:7,against:1,refresh_fe:6,instanc:[6,2,3,5],oauth_token:2,context:[6,4,5],let:7,sigterm:6,com:[6,2,5,7],evict:6,load:[6,3,5],simpli:[5,7],kwd:6,hup_handl:6,point:[2,7],instanti:[6,2],schedul:[6,3,4],hyphen:5,period:[6,3],dispatch:6,loader:[6,3,4],header:2,total_run_count:[6,3],uripart:2,shutdown:6,usr1:6,pidlock:6,oauth2:5,assum:5,db_index:5,lrucach:6,three:[6,2],evalu:6,imp:6,associate_complet:5,offic:6,empti:5,mark:5,userpassauth:2,secret:[2,5,7],much:[6,2],interest:2,gaza:2,parse_gid:6,immedi:6,tokenbucket:6,accept_magic_kwarg:6,parser:6,gist:6,fill_rat:6,pid:6,auth_complet:5,worker:[6,3,4],search:[0,2],ani:[6,2,3,5],transact:5,func:6,child:6,"catch":3,sigttou:6,worker_main:6,weekdai:6,ident:3,asyncresult:6,look:6,packag:6,servic:6,timelimitexceed:6,bnf:6,defin:[6,3],"while":6,"0x1077f96e0":6,publicli:3,error:[6,2,3,5],fun:[6,3],djceleri:3,loop:6,propag:6,apply_async:6,"0x103f50350":[],eta_scheduler_precis:6,readi:6,find_modul:6,token_secret:2,tabl:[0,7],non:6,activ:[6,7],ba03:6,sequence_of_str:6,registered_task:3,myapp:5,chord_unlock:6,celeryd_concurr:6,clone:7,issue4978:6,complet:[6,5],twitter_account:7,pool_cl:6,develop:7,welcom:0,author:7,receiv:6,parti:[6,5],make:[6,3,5,7],get_backend_cl:[],same:[6,2],check:[6,1,5],member:[6,2],handl:5,epoch:2,eta:3,decod:2,"0x10c9acd90":[],oauth_token_secret:2,auto:7,wakeup:6,document:[0,2,7],conflict:3,higher:6,status:2,date_chang:3,workdir:6,http:[6,2,5,7],hostnam:[6,3,5],swell:2,taskrevokederror:6,personn:7,effect:6,interval_id:3,eta_scheduler_cl:6,lpmerg:6,get_account:1,initi:6,applic:[0,2,3,5,6,7],extern:[0,4],all_stat:6,weird:2,expand:6,recent:6,lower:6,appropri:6,default_app:6,whose:5,bewar:6,celeri:[6,0,3,4,7],entri:[6,5],"8998d0f4":6,know:6,exampl:[6,2,3],chanc:6,thi:[0,1,2,3,4,5,6,7],maybe_promis:6,everyth:3,self:6,latest:2,periodic_task:6,storeassoci:5,chord:6,identifi:6,itemgett:6,execut:[6,3],sigusr1:6,when:[6,2,3,5,7],verbose_nam:5,eggdiscov:[0,7],scheduler_cl:6,read_pid:6,"0x102235dd0":[],"0x10acfe6e0":[],mysql:7,notregist:6,import_from_cwd:6,followers_id:1,yet:[2,5],task:[6,3,4],now:6,"0x103f1a6e0":[],unique_for_month:5,systemexit:6,group_backend_by_typ:5,except:[6,2,3,4,5],default_load:6,exempl:[1,7],systemtermin:6,read_token_fil:2,add:[6,3,5,7],valid:[1,5],input:[6,5],logger:6,subsequ:6,modul:[0,2,3,4,5,6,7],match:7,build:[2,5],opt:6,"0x107f8bdd0":[],twitter_stream:2,format:[6,2,3,7],read:[6,2],big:6,twitterhttperror:2,read_configur:3,attributedictmixin:6,not_associ:5,"0x10ad340d0":[],mon:[6,3,4],background:[6,3,7],celery_send_task_sent_ev:6,tick:6,associ:5,licens:6,verify_credenti:1,insert:6,daemon:6,"0x10ff6ec90":[],like:[6,2,1],success:[6,3],filenam:2,process_initi:6,signal:[6,4,5],create_pidlock:6,integ:6,noth:6,setegid:6,tasksetmeta:3,"0x10f278420":[],necessari:3,either:7,choic:5,output:[2,5],soft:6,page:[0,7],noauth:2,crontab_id:3,exceed:6,schedule_filenam:6,old:6,often:6,deal:6,captur:6,interv:6,some:5,back:5,parse_uid:6,intern:6,sampl:2,refresh:6,workcontrol:6,consumer_cl:6,server:[6,7],been:6,taskstat:3,virtualenv:7,txt:7,djangoproject:5,backend:[6,5],last_heartbeat:3,writelin:6,avoid:5,notconfigur:6,flush:6,token:[6,2,5],subclass:6,usernam:2,"0x104c89410":[],noop:6,"_d_":6,my_handl:6,content:[0,3],dsa_view:5,eventreceiv:6,localhost:7,refer:6,core:5,leak:6,who:2,run:[6,3,7],garbag:5,inspect:6,usag:6,broker:[6,7],els:[1,5],last_run_at:[6,3],sanitize_redirect:5,host:5,taskset:[6,3],async:6,wget:7,post:[3,5],crf:5,lock:6,comparison:6,about:[1,7],postgresql:7,embed_clockservic:6,syncdb:7,"0x10a2ed420":[],manag:[5,7],maxlen:6,degre:6,regular:6,exc_info:6,unready_st:6,schedulingerror:6,fri:6,"0x10262e668":5,pool_putlock:6,"__repr__":6,activest:6,get_cls_by_nam:6,regist:6,on_task_init:3,within:3,domain:2,automat:3,due:6,down:6,aspn:6,explain:[1,7],apach:7,contrib:5,chang:[6,7],textind:6,storag:5,your:[0,1,2,3,5,7],merg:6,processor:[4,5],log:[6,5],wai:[2,7],set_curr:6,abov:7,get_loader_cl:6,refil:6,support:[6,2],json:[2,3,5],"long":[6,3],custom:6,avail:6,start:[6,3,5],handler:6,interfac:[6,2],includ:3,api_vers:2,suit:5,forward:6,not_provid:5,twitter:[0,2,1,4,7],"function":[6,3,1,5],properli:[5,7],auth_process:5,local_set:7,form:[6,5],forc:6,tupl:6,basic:2,"0x1049b5dd0":[],somehow:6,state:[6,3,4],link:6,newer:6,oauth:[2,1,5],"0x103153420":[],worker_sigignor:6,getassoci:5,"true":[6,2,5],bug:6,celerymon:6,privileg:6,reset:[6,2],utc:2,made:1,attr:6,task_time_limit:6,gid:6,"default":[6,3,5],caller:6,bucket:6,social_auth:[1,5],day_of_week:[6,3],asynchron:3,redirect_nam:5,below:6,stacktrac:6,limit:[6,2,1],con_secret_kei:2,otherwis:3,firstmethod:6,sync_everi:6,"0x10bcb5420":[],connect:[6,0,7],what:[6,0,7],result:[6,2,3,7],gather:7,uid:6,creat:[6,0,5,7],"int":[6,2,3],taskpool:6,dure:6,dictattribut:6,nonceopt:5,doesn:[6,5,7],repres:[6,1],autoscal:6,ready_queu:6,exist:[6,5],shortcut:1,file:[6,2,3,7],d5ab5ac6ad5d:6,pip:7,backends_data:5,simplest:7,saturdai:6,password:[6,2],googl:5,get_fdmax:6,titl:[],user:[0,1,2,4,5,6,7],get_twitter_account:1,"0x10afd3a50":[],associt:5,field:[6,5],possibl:[6,7],other:[6,2,4,5],lookup:7,special:6,test:[6,1,5],ignor:6,you:[6,3,2,1,7],workerst:3,max_iter:6,expiration_delta:5,openid:5,mpromis:6,registri:[6,4],finali:1,configurationview:6,sequenc:6,toolset:2,exceptioninfo:6,error_messag:5,predic:6,worker_id:3,releas:6,track:6,embed:6,tocken:5,concur:7,param:1,pool:6,leave_charact:5,bitbucket:7,is_du:6,followerslookup:[0,1],algorithm:6,directori:[6,7],accept:6,is_task_success:3,save:[1,5],backend_cleanup:6,public_timelin:2,obj:[6,5],time:[6,2,7],create_task_cl:6,cookbook:6,ready_callback:6},objtypes:{"0":"py:module","1":"py:function","2":"py:attribute","3":"py:method","4":"py:class","5":"py:exception","6":"py:data"},titles:["Welcome to EggDiscover&#8217;s documentation!","Followerslookup","The Twitter Module","The Django Celery Module","External apps used in this project","The User Social Auth Module","The Celery Module","Installation"],objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","attribute","Python attribute"],"3":["py","method","Python method"],"4":["py","class","Python class"],"5":["py","exception","Python exception"],"6":["py","data","Python data"]},filenames:["index","followerslookup","twitter","djcelery","externalapps","social_auth","celery","install"]})
+Search.setIndex({objects:{"":{celery:[6,0,1,""],twitter:[2,0,1,""],djcelery:[3,0,1,""],social_auth:[5,0,1,""]},"djcelery.app":{app:[3,6,1,""]},"celery.datastructures.TokenBucket":{expected_time:[6,3,1,""],timestamp:[6,2,1,""],capacity:[6,2,1,""],can_consume:[6,3,1,""],fill_rate:[6,2,1,""]},"celery.log":{SilenceRepeated:[6,4,1,""],LoggingProxy:[6,4,1,""]},"celery.events.EventReceiver":{process:[6,3,1,""],capture:[6,3,1,""],consumer:[6,3,1,""]},"celery.log.LoggingProxy":{close:[6,3,1,""],isatty:[6,3,1,""],writelines:[6,3,1,""],flush:[6,3,1,""]},"celery.execute":{apply:[6,1,1,""],apply_async:[6,1,1,""]},"social_auth.models":{UserSocialAuth:[5,4,1,""],Nonce:[5,4,1,""],Association:[5,4,1,""]},"celery.worker.WorkController":{ready_queue:[6,2,1,""],mediator:[6,2,1,""],loglevel:[6,2,1,""],stop:[6,3,1,""],embed_clockservice:[6,2,1,""],terminate:[6,3,1,""],start:[6,3,1,""],process_task:[6,3,1,""],concurrency:[6,2,1,""],send_events:[6,2,1,""],logger:[6,2,1,""],logfile:[6,2,1,""],consumer:[6,2,1,""],pool:[6,2,1,""]},"celery.utils.mpromise":{evaluated:[6,2,1,""]},"djcelery.loaders.DjangoLoader":{on_task_init:[3,3,1,""],on_worker_init:[3,3,1,""],read_configuration:[3,3,1,""],on_process_cleanup:[3,3,1,""]},"djcelery.models":{TaskState:[3,4,1,""],PeriodicTask:[3,4,1,""],TaskMeta:[3,4,1,""],TaskSetMeta:[3,4,1,""],CrontabSchedule:[3,4,1,""],IntervalSchedule:[3,4,1,""],result_model:[3,2,1,""],WorkerState:[3,4,1,""],PeriodicTasks:[3,4,1,""]},"celery.events":{EventDispatcher:[6,4,1,""],EventReceiver:[6,4,1,""],Event:[6,1,1,""]},"celery.events.EventDispatcher":{close:[6,3,1,""],send:[6,3,1,""]},"celery.loaders":{get_loader_cls:[6,1,1,""]},"social_auth.models.UserSocialAuth":{expiration_delta:[5,3,1,""]},"social_auth.context_processors":{social_auth_backends:[5,1,1,""],backends_data:[5,1,1,""],social_auth_by_name_backends:[5,1,1,""],social_auth_by_type_backends:[5,1,1,""]},"djcelery.views":{task_webhook:[3,1,1,""],registered_tasks:[3,1,1,""],apply:[3,1,1,""],task_status:[3,1,1,""],task_view:[3,1,1,""],is_task_successful:[3,1,1,""]},"celery.app":{App:[6,4,1,""],app_or_default:[6,1,1,""],default_app:[6,6,1,""],default_loader:[6,6,1,""]},celery:{datastructures:[6,0,1,""],utils:[6,0,1,""],states:[6,0,1,""],platforms:[6,0,1,""],contrib:[6,0,1,""],log:[6,0,1,""],loaders:[6,0,1,""],signals:[6,0,1,""],local:[6,0,1,""],app:[6,0,1,""],beat:[6,0,1,""],db:[6,0,1,""],worker:[6,0,1,""],routes:[6,0,1,""],registry:[6,0,1,""],schedules:[6,0,1,""],execute:[6,0,1,""],task:[6,0,1,""],decorators:[6,0,1,""],events:[6,0,1,""],exceptions:[6,0,1,""],messaging:[6,0,1,""]},"social_auth.admin":{UserSocialAuthOption:[5,4,1,""],NonceOption:[5,4,1,""],AssociationOption:[5,4,1,""]},"celery.platforms.PIDFile":{remove_if_stale:[6,3,1,""],is_locked:[6,3,1,""],acquire:[6,3,1,""],remove:[6,3,1,""],read_pid:[6,3,1,""],release:[6,3,1,""],path:[6,2,1,""]},"celery.platforms":{Signals:[6,4,1,""],set_effective_user:[6,1,1,""],get_fdmax:[6,1,1,""],create_pidlock:[6,1,1,""],parse_uid:[6,1,1,""],setegid:[6,1,1,""],set_mp_process_title:[6,1,1,""],set_process_title:[6,1,1,""],seteuid:[6,1,1,""],parse_gid:[6,1,1,""],detached:[6,1,1,""],LockFailed:[6,5,1,""],PIDFile:[6,4,1,""]},"celery.platforms.Signals":{ignore:[6,3,1,""],reset:[6,3,1,""],supported:[6,3,1,""],update:[6,3,1,""],signum:[6,3,1,""]},"celery.utils":{lpmerge:[6,1,1,""],instantiate:[6,1,1,""],fun_takes_kwargs:[6,1,1,""],truncate_text:[6,1,1,""],find_module:[6,1,1,""],get_symbol_by_name:[6,1,1,""],cry:[6,1,1,""],get_cls_by_name:[6,1,1,""],mpromise:[6,4,1,""],noop:[6,1,1,""],get_full_cls_name:[6,1,1,""],textindent:[6,1,1,""],promise:[6,4,1,""],maybe_promise:[6,1,1,""],chunks:[6,1,1,""],kwdict:[6,1,1,""],import_from_cwd:[6,1,1,""],padlist:[6,1,1,""],firstmethod:[6,1,1,""],mattrgetter:[6,1,1,""],first:[6,1,1,""]},"social_auth.fields":{JSONField:[5,4,1,""]},twitter:{OAuth:[2,4,1,""],TwitterError:[2,5,1,""],write_token_file:[2,1,1,""],Twitter:[2,4,1,""],TwitterHTTPError:[2,5,1,""],TwitterStream:[2,4,1,""],UserPassAuth:[2,4,1,""],TwitterResponse:[2,4,1,""],NoAuth:[2,4,1,""],read_token_file:[2,1,1,""]},"djcelery.loaders":{autodiscover:[3,1,1,""],find_related_module:[3,1,1,""],DjangoLoader:[3,4,1,""]},"celery.worker":{WORKER_SIGIGNORE:[6,6,1,""],WorkController:[6,4,1,""],WORKER_SIGRESET:[6,6,1,""],process_initializer:[6,1,1,""]},"celery.app.App":{Task:[6,2,1,""],Beat:[6,3,1,""],Worker:[6,3,1,""],set_current:[6,3,1,""],task:[6,3,1,""],TaskSet:[6,3,1,""],worker_main:[6,3,1,""],create_task_cls:[6,3,1,""]},"celery.datastructures":{ConfigurationView:[6,4,1,""],LimitedSet:[6,4,1,""],ExceptionInfo:[6,4,1,""],AttributeDict:[6,4,1,""],AttributeDictMixin:[6,4,1,""],TokenBucket:[6,4,1,""],DictAttribute:[6,4,1,""],LRUCache:[6,4,1,""]},"followerslookup.fetching":{save_users:[1,1,1,""],save_user:[1,1,1,""],get_followers_ids:[1,1,1,""],get_followers_infos:[1,1,1,""]},"celery.routes":{MapRoute:[6,4,1,""],prepare:[6,1,1,""]},"celery.beat.Scheduler":{schedule:[6,2,1,""],sync_every:[6,2,1,""],max_interval:[6,2,1,""],Entry:[6,2,1,""],logger:[6,2,1,""],tick:[6,3,1,""]},"celery.schedules.crontab":{is_due:[6,3,1,""],remaining_estimate:[6,3,1,""],day_of_week:[6,2,1,""],minute:[6,2,1,""],hour:[6,2,1,""]},"celery.beat.ScheduleEntry":{name:[6,2,1,""],schedule:[6,2,1,""],update:[6,3,1,""],args:[6,2,1,""],last_run_at:[6,2,1,""],next:[6,3,1,""],is_due:[6,3,1,""],total_run_count:[6,2,1,""],kwargs:[6,2,1,""],options:[6,2,1,""]},"social_auth.store":{DjangoOpenIDStore:[5,4,1,""]},"celery.exceptions":{NotRegistered:[6,5,1,""],TaskRevokedError:[6,5,1,""],MaxRetriesExceededError:[6,5,1,""],TimeoutError:[6,5,1,""],NotConfigured:[6,5,1,""],ImproperlyConfigured:[6,5,1,""],WorkerLostError:[6,5,1,""],SoftTimeLimitExceeded:[6,5,1,""],RetryTaskError:[6,5,1,""],QueueNotFound:[6,5,1,""],AlreadyRegistered:[6,5,1,""],TimeLimitExceeded:[6,5,1,""],SystemTerminate:[6,5,1,""]},"celery.datastructures.ExceptionInfo":{tb:[6,2,1,""],exception:[6,2,1,""],traceback:[6,2,1,""],type:[6,2,1,""]},"twitter.TwitterResponse":{rate_limit_reset:[2,2,1,""],rate_limit_remaining:[2,2,1,""]},"social_auth.utils":{sanitize_redirect:[5,1,1,""],group_backend_by_type:[5,1,1,""],setting:[5,1,1,""],sanitize_log_data:[5,1,1,""]},"djcelery.utils":{naturaldate:[3,1,1,""]},"celery.task":{periodic_task:[6,1,1,""],task:[6,1,1,""],ping:[6,1,1,""]},"social_auth.fields.JSONField":{value_from_object:[5,3,1,""],validate:[5,3,1,""],value_to_string:[5,3,1,""],to_python:[5,3,1,""],get_prep_value:[5,3,1,""]},followerslookup:{fetching:[1,0,1,""],authentication:[1,0,1,""]},"celery.schedules.crontab_parser":{ParseException:[6,5,1,""]},"celery.schedules":{crontab:[6,4,1,""],ParseException:[6,5,1,""],crontab_parser:[6,4,1,""]},djcelery:{views:[3,0,1,""],models:[3,0,1,""],app:[3,0,1,""],loaders:[3,0,1,""],admin:[3,0,1,""],snapshot:[3,0,1,""],mon:[3,0,1,""],urls:[3,0,1,""],admin_utils:[3,0,1,""],utils:[3,0,1,""]},social_auth:{context_processors:[5,0,1,""],views:[5,0,1,""],admin:[5,0,1,""],fields:[5,0,1,""],utils:[5,0,1,""],signals:[5,0,1,""],models:[5,0,1,""],urls:[5,0,1,""],store:[5,0,1,""]},"celery.registry":{tasks:[6,6,1,""]},"social_auth.views":{disconnect:[5,1,1,""],complete:[5,1,1,""],associate_complete:[5,1,1,""],associate:[5,1,1,""],auth:[5,1,1,""],complete_process:[5,1,1,""],auth_process:[5,1,1,""],dsa_view:[5,1,1,""],auth_complete:[5,1,1,""]},"celery.beat":{ScheduleEntry:[6,4,1,""],EmbeddedService:[6,1,1,""],Scheduler:[6,4,1,""],SchedulingError:[6,5,1,""]},"celery.states":{state:[6,4,1,""],precedence:[6,1,1,""],PRECEDENCE:[6,6,1,""]},"celery.local":{Proxy:[6,4,1,""],try_import:[6,1,1,""]},"social_auth.store.DjangoOpenIDStore":{storeAssociation:[5,3,1,""],useNonce:[5,3,1,""],getAssociation:[5,3,1,""]},"followerslookup.authentication":{get_auth:[1,1,1,""],get_account:[1,1,1,""],get_twitter_account:[1,1,1,""]},"celery.datastructures.LimitedSet":{clear:[6,3,1,""],add:[6,3,1,""],pop_value:[6,3,1,""],first:[6,2,1,""]}},terms:{represent:6,all:[6,3,1,5,7],code:[6,3,5],forget:7,"0x10c9996e0":[],queri:1,untrust:5,global:6,save_us:1,d5ab5ac6ad5d:6,improperli:6,last_upd:3,higher:6,abil:6,follow:[6,1,7],"0x10f7b5510":[],oldest:6,token_kei:2,task_webhook:3,privat:5,app_or_default:6,depend:[2,5],backend_cleanup:6,tweet:2,umask:6,send:[6,2,5],"__cmp__":6,init:7,program:6,djangoopenidstor:5,under:5,noop:6,getargspec:6,sent:6,crontabschedul:3,digit:6,sourc:[6,3,1,5,7],everi:[6,3],string:[6,3,2,1,5],fals:[6,2,5],"0x2ff63d0":[6,3],webhook:3,get_followers_info:1,next_time_to_run:6,util:[1,2,3,4,5,6],context_processor:5,"0x10ff3b6e0":[],wikipedia:6,facebook:5,billybob:2,seteuid:6,failur:6,retriev:[2,5],exact:6,tri:3,"0x104485490":[],magic:6,max_interv:6,in_sighandl:6,friends_timelin:2,list:[6,3,2,1,5],iter:[6,2],"try":6,item:[6,5],session:5,unmanag:6,stderr:6,abov:7,sleep:6,superced:3,retun:5,exit_handl:6,dict:[6,2,5],pleas:[6,3],"0x107f8bdd0":[],trend:2,natur:3,periodictask:[6,3],direct:2,numspec:6,cron:6,second:[6,2,5],"0x1040bbf90":[],pass:2,crontab_pars:6,proxi:6,excit:2,index:[6,0],twitter_search:2,"_field":6,clock:6,introspect:6,abl:7,argspec:6,overload:6,twitterstream:[2,4],delet:6,version:6,primary_kei:5,"new":[6,2,5],ever:2,"public":2,celery_rout:6,redirect:5,full:6,timeouterror:6,run_everi:6,httpresponseservererror:5,usag:6,gener:[6,2,5,7],task_statu:3,here:[6,2],set_process_titl:6,shouldn:3,send_ev:6,witch:1,free:1,task_nam:3,trunk:5,path:[6,5],becom:[6,5],valu:[6,2,5,7],set_as_curr:6,followers_id:1,convert:[2,3,5],pretti:[6,2],task_id:[6,3],prognam:6,anymor:6,host:5,queue:[6,3],datetim:3,related_nam:3,behav:2,within:3,social:[0,4,5],action:6,propagate_st:6,implement:6,pop_valu:6,celery_result_backend:6,ourselv:6,control:6,via:[6,3],useful:1,misc:6,extra:6,revok:6,appli:[6,3],app:[6,0,3,4],prefer:[2,3],deprec:[6,2],api:[2,1,7],celerybeat:6,instal:[6,0,7],total:[6,2],establish:6,unit:6,fun_takes_kwarg:6,from:[6,2,3,5],would:[6,5],joespassword:2,term:6,current_app:6,two:6,next:[6,0,7],few:[2,5],live:3,social_auth_by_type_backend:5,call:[6,2,3],softtimelimitexceed:6,taken:6,scheduleentri:6,pickleabl:6,type:[6,5,7],until:2,more:6,nicolassarcozi:1,validationerror:5,get_followers_id:1,"0x4d43410":5,server_url:5,warn:6,isatti:6,templat:5,relai:5,particular:[6,2,7],postgresql:7,get_prep_valu:5,hold:[6,2],personn:7,cach:6,must:[6,1],none:[6,2,5],rook:[],nonc:5,hour:[6,3,1],redirect_to:5,alia:[6,3],prepar:6,work:[6,3],uniqu:5,dev:2,descriptor:6,remain:2,registered_task:3,can:[6,2,1,5,7],learn:2,caution:3,purpos:6,root:7,fetch:[0,1,7],def:[6,3],appropri:6,overrid:5,unique_for_d:5,sqlite:7,malform:5,stream:2,give:[6,2,7],process:[6,1,5,7],lockfail:6,registr:5,indic:0,try_import:6,critic:6,liter:6,auto_cr:5,want:[6,7],"0x7fd35e780c60":6,serial:[6,5],made:1,occur:6,solem:6,delai:6,alwai:[6,7],sundai:6,db_tablespac:5,secur:2,value_to_str:5,get:[0,1,2,3,6,7],ping:6,modulenam:6,georg:6,divis:6,how:[6,2],djangoload:3,memoiz:6,regist:6,opt:6,instead:6,csv:7,simpl:5,twitterrespons:2,updat:[6,7],map:6,"0x10f1b81d0":[],resourc:6,timedelta:[6,5],max:6,"0x10e791510":[],after:6,twitter_account:7,superus:7,befor:[6,3,5],membership:6,tabl:[0,7],exc_info:6,date:[6,3],develop:7,underscor:5,data:[6,2,5],httpheader:2,httplib:2,"0x10c9796e0":[],ident:3,github:6,gethostnam:6,third:[6,5],loglevel:6,"0x10c9ccd90":[],setproctitl:6,django:[0,3,4,7,5],like:[6,2,1],inform:[6,1,7],preced:6,environ:[6,3,7],allow:5,anoth:6,callabl:6,lru:6,fallback:6,lambda:5,retval:3,order:7,feed:6,listnam:2,help:2,improperlyconfigur:6,over:6,midnight:6,soon:6,v_host:7,screen_nam:2,unique_for_year:5,help_text:5,still:6,paramet:[6,3,1,5],write:[6,2,7],group:[6,5],tsk:[],fit:1,get_auth:1,fix:6,"0x1081a6f50":[],twitter_us:1,him:1,platform:[6,4],rate_limit_reset:2,pend:6,requir:[6,0,7],maprout:6,decod:2,hidden:3,main:6,might:[6,7],becuas:5,recip:6,them:2,good:6,"return":[6,3,2,1,5],truncate_text:6,thei:5,output:[2,5],python:[6,2,5,7],timestamp:[6,5],safe:[6,3],twitterus:7,dai:6,auth:[0,2,1,4,5],"break":2,subtask:6,promis:6,verifi:6,detach:6,minimalist:2,multiprocess:[6,3],da0b:6,grammar:6,name:[6,2,3,5],edit:[6,5,7],config:6,"0x102c295f0":[],instruct:7,authent:[0,2,1,4,5],tstamp:3,separ:6,followers_info:1,exampl:[6,2,3],timeout:6,each:[6,1,5,7],found:[6,5],unicod:6,quarter:6,attributeerror:6,truncat:6,mean:6,"0x1099a6450":[],status:2,harm:5,replac:5,chunk:6,timelin:2,rate_limit_remain:2,continu:6,crontab:6,consum:[6,7],wrap:6,on_worker_init:3,embeddedservic:6,expect:6,our:6,happen:6,todo:1,event:[6,4],notmyapp:5,out:6,variabl:6,silencerep:6,queuenotfound:6,safeti:6,referenc:5,open:[6,7],access:[6,2,3,7],remaining_estim:6,set_effective_us:6,publish:6,max_retri:6,"0x5266320":5,rel:[6,5],print:5,parseexcept:6,"_default":2,nicolassarkozi:1,ready_st:6,integr:3,intervalschedul:3,retrytaskerror:6,billysbud:2,advanc:6,usersocialauthopt:5,workerlosterror:6,differ:[5,7],argv:6,"0x10c5f9dd0":[],consumer_secret:2,reason:[6,7],base:[6,2],process_task:6,dictionari:[6,3],result_model:3,ask:[6,7],org:[6,7],runserv:7,thrown:2,indent:6,thread:6,launch:[0,1,7],just:[6,5],traceback:[6,3],put:7,success:[6,3],keep:6,filter:7,thing:[2,4,7],get_account:1,isn:5,router:6,think:2,urlconf:3,first:[6,2,1,5],oper:6,wiki:6,rang:6,socialuserauth:1,suffix:6,directli:6,exchang:[6,3],twitter_consumer_kei:7,number:[6,5],capac:6,l36:5,mai:6,datastructur:[6,4],alreadi:[6,1],done:3,messag:[6,2],blank:5,everyth:3,installed_app:3,miss:6,primari:6,worker_sigreset:6,size:6,given:[6,3,1,5],token_bucket:6,dump:5,start:[6,3,5],unknown:6,interact:2,system:[6,7],least:6,sigttin:6,citi:6,"null":5,max_length:5,too:6,statement:5,termin:6,conveni:6,routing_kei:[6,3],store:[6,2,5],includ:3,adher:6,reset:[6,2],option:[6,5],complete_process:5,copi:7,specifi:6,sync:6,forward:6,"short":6,hup:6,signum:6,shelv:6,embed_clockservic:6,nobodi:6,grace:6,rss:6,kind:6,buffer_while_offlin:6,doubli:6,keyword:[6,3],provid:[6,1,5],expr:6,remov:6,onc:[6,7],rate:[6,2],structur:[6,5,7],charact:6,project:[0,4,7],friend:2,str:6,entri:[6,5],posit:6,minut:[6,3],"0x10cf80310":[],"0x10afac6e0":[],"0x10dde0ed0":[],browser:[5,7],exception_st:6,kwdict:6,max_:6,terribl:2,respons:[6,2,3,4],argument:[6,3],raw:2,mon:[6,3,4],expir:[6,3,5],have:[6,5],"__main__":6,need:[6,0,1,5,7],value_from_object:5,element:6,task_view:3,autodiscov:3,nowfun:6,maxretriesexceedederror:6,built:6,equival:6,alias:6,kwlist:6,rout:[6,4],note:[3,5],also:[6,2],without:3,take:[6,1],which:[6,2],egdiscov:7,attributedict:6,channel:6,sig_ign:6,sure:[6,5],unless:6,distribut:6,trace:6,shall:6,buffer:6,object:[1,2,3,4,5,6],statu:3,discov:3,twitter_consumer_secret:7,most:6,node_id:6,direct_messag:2,bsd:6,"0x10bcde420":[],"class":[6,2,3,4,5],prematur:6,"0x10a039420":[],don:7,exc:6,db_column:5,url:[6,3,4,5],doc:2,clear:6,later:6,request:[1,2,3,5,6,7],uri:2,doe:[6,3],pidfil:6,part:7,snapshot:[3,4],runtim:3,clean:[6,5],databas:[1,5,7],nyc:6,pars:[6,2,1],associationopt:5,latest:2,salt:5,dow:6,dot:6,naturald:3,autoscaler_cl:6,text:[6,2],"__str__":6,consult:6,celery_queu:6,twittererror:2,concurr:6,earth:6,find:[6,2,3],xml:2,current:[6,2,5],onli:[6,7],locat:6,acquir:6,copyright:6,rabbitmq:7,"0x10704a510":[],"0x10d88a490":[],configur:[6,0,3,5,7],apach:7,forev:2,should:6,usersocialauth:[1,5],eventdispatch:6,set_mp_process_titl:6,is_success:3,"0x107830290":[],local:[6,4],sighup:6,info:[6,7],is_lock:6,usenonc:5,disable_rate_limit:6,beat:[6,4],verbose_nam:5,"0x10750b420":[],express:6,stop:6,account:[1,5,7],get_full_cls_nam:6,cannot:7,eggdiscov:[0,7],csrf:5,interv:6,vost:7,sigmap:6,restart:6,child:6,enabl:[6,2,3],"0x10c9acd90":[],cry:6,secret:[2,5,7],yield:2,method:[6,2,5],write_token_fil:2,limitedset:6,social_auth_by_name_backend:5,signal_nam:6,rune:7,admin_sit:5,mediat:6,contain:[6,3],mediator_cl:6,loggingproxi:6,"0x106b34420":[],where:[6,5],wrote:2,view:[6,3,4,5],respond:6,set:[6,3,1,5,7],"0x10acfe6e0":[],fair:6,expected_tim:6,task_soft_time_limit:6,social_auth:[1,5],model_inst:5,atexit:6,see:[6,1,5,7],result:[6,2,3,7],worker_main:6,arg:[6,3,5],content:[0,3],close:[6,7],bee:7,padlist:6,servic:6,asynchron:3,can_consum:6,yer:2,extend:1,on_process_cleanup:3,pattern:6,someth:2,sigint:6,con_secret:2,yet:[2,5],taskmeta:3,written:6,won:5,retri:[6,3],between:[6,5],"import":6,author:7,bunch:2,email:2,attribut:[6,2,5],never:6,find_related_modul:3,kei:[6,2,3,5,7],screen:2,gethead:2,alreadyregist:6,job:6,joe:2,finali:1,frozenset:6,disconnect:5,classnam:6,get_symbol_by_nam:6,regular:6,monitor:[6,7],jsonfield:5,last:6,tokensin:6,admin:[3,4,7,5],howev:6,lazi:6,against:1,refresh_fe:6,instanc:[6,2,3,5],oauth_token:2,context:[6,4,5],let:7,sigterm:6,create_task_cl:6,com:[6,2,5],evict:6,load:[6,3,5],simpli:[5,7],kwd:6,hup_handl:6,point:[2,7],instanti:[6,2],schedul:[6,3,4],hyphen:5,period:[6,3],dispatch:6,loader:[6,3,4],header:2,total_run_count:[6,3],non:6,uripart:2,shutdown:6,usr1:6,workcontrol:6,assum:5,db_index:5,lrucach:6,creat:[6,0,5,7],imp:6,associate_complet:5,due:6,empti:5,mark:5,"int":[6,2,3],json:[2,3,5],much:[6,2],interest:2,gaza:2,parse_gid:6,immedi:6,tokenbucket:6,accept_magic_kwarg:6,dictattribut:6,gist:6,pip:7,fill_rat:6,nonceopt:5,auth_complet:5,worker:[6,3,4],search:[0,2],ani:[6,2,3,5],celery_send_task_sent_ev:6,"0x10afd3a50":[],transact:5,func:6,turn:3,"catch":3,sigttou:6,costanza:6,weekdai:6,"__repr__":6,stolen:6,asyncresult:6,look:6,packag:6,celeryd_log_fil:6,timelimitexceed:6,get_cls_by_nam:6,defin:[6,3],"while":6,"0x1077f96e0":[],publicli:3,error:[6,2,3,5],fun:[6,3],modul:[0,2,3,4,5,6,7],djceleri:3,loop:6,propag:6,apply_async:6,"0x103f50350":[],eta_scheduler_precis:6,readi:6,find_modul:6,token_secret:2,"0x1028868d0":[],site:7,activ:[6,7],ba03:6,sequence_of_str:6,kwarg:[6,3,5],myapp:5,chord_unlock:6,celeryd_concurr:6,limit:[6,2,1],clone:7,issue4978:6,decor:[6,3,4,5],pool_cl:6,social_auth_backend:5,welcom:0,etc:3,receiv:6,parti:[6,5],make:[6,3,5,7],format:[6,2,3,7],same:[6,2],member:[6,2],handl:5,epoch:2,eta:3,pad:6,split:6,oauth_token_secret:2,auto:7,wakeup:6,document:[0,2,7],conflict:3,complet:[6,5],week:6,date_chang:3,workdir:6,http:[6,2,5,7],hostnam:[6,3,5],swell:2,taskrevokederror:6,upon:7,effect:6,interval_id:3,eta_scheduler_cl:6,lpmerg:6,rais:[6,2,3,5],initi:6,applic:[0,2,3,5,6,7],extern:[0,4],all_stat:6,weird:2,expand:6,recent:6,lower:6,task:[6,3,4],default_app:6,whose:5,bewar:6,celeri:[6,0,3,4,7],keyboardinterrupt:6,"8998d0f4":6,client:6,chanc:6,thi:[0,1,2,3,4,5,6,7],maybe_promis:6,model:[3,1,4,5],self:6,left:6,periodic_task:6,storeassoci:5,chord:6,identifi:6,itemgett:6,execut:[6,3],sigusr1:6,when:[6,2,3,5,7],sanitize_log_data:5,rest:[2,1,7],scheduler_cl:6,read_pid:6,"0x102235dd0":[],human:3,mysql:7,notregist:6,import_from_cwd:6,simultan:6,boblefrag:7,celery_trace_app:6,gather:7,now:6,"0x103f1a6e0":[],unique_for_month:5,systemexit:6,group_backend_by_typ:5,except:[6,2,3,4,5],default_load:6,exempl:[1,7],systemtermin:6,read_token_fil:2,add:[6,3,5,7],other:[6,2,4,5],input:[6,5],logger:6,subsequ:6,bnf:6,match:7,build:[2,5],bin:7,celeryd:[6,7],twitter_stream:2,get_backend_cl:[],read:[6,2],big:6,twitterhttperror:2,read_configur:3,attributedictmixin:6,not_associ:5,"0x10ad340d0":[],know:6,background:[6,3,7],insert:6,somewher:7,tick:6,associ:5,licens:6,verify_credenti:1,consumer_kei:2,daemon:6,"0x10ff6ec90":[],to_python:5,specif:6,filenam:2,process_initi:6,signal:[6,4,5],create_pidlock:6,integ:6,noth:6,setegid:6,tasksetmeta:3,"0x10f278420":[],necessari:3,either:7,choic:5,async:6,soft:6,page:[0,7],noauth:2,crontab_id:3,exceed:6,schedule_filenam:6,old:6,often:6,deal:6,captur:6,twitter:[0,2,1,4,7],some:5,back:5,parse_uid:6,intern:6,sampl:2,refresh:6,pidlock:6,consumer_cl:6,server:[6,7],subclass:6,taskstat:3,virtualenv:7,googl:5,txt:7,djangoproject:5,backend:[6,5],last_heartbeat:3,writelin:6,avoid:5,notconfigur:6,flush:6,token:[6,2,5],per:1,usernam:2,"0x104c89410":[],exit:6,"_d_":6,my_handl:6,foo:6,dsa_view:5,eventreceiv:6,localhost:7,refer:6,core:5,who:2,run:[6,3,7],garbag:5,inspect:6,migrat:7,broker:[6,7],els:[1,5],last_run_at:[6,3],sanitize_redirect:5,step:6,taskset:[6,3],fulli:2,wget:7,post:[3,5],crf:5,lock:6,comparison:6,about:[1,7],simplest:7,actual:6,socket:6,"0x10a2ed420":[],manag:[5,7],maxlen:6,degre:6,offic:6,fri:6,discard:6,unready_st:6,schedulingerror:6,produc:6,pool_putlock:6,own:2,activest:6,"0x1081d6810":[],prefetch_multipli:6,on_task_init:3,"0x10262e668":[],domain:2,automat:3,three:[6,2],down:6,aspn:6,explain:[1,7],been:6,contrib:5,chang:[6,7],textind:6,storag:5,your:[0,1,2,3,5,7],merg:6,processor:[4,5],log:[6,5],wai:[2,7],set_curr:6,"0x2fbbb18":6,get_loader_cl:6,refil:6,support:[6,2],remove_if_stal:6,"long":[6,3],custom:6,avail:6,mattrgett:6,handler:6,interfac:[6,2],appload:6,api_vers:2,suit:5,"var":6,not_provid:5,max_tasks_per_child:6,"function":[6,3,1,5],properli:[5,7],auth_process:5,local_set:7,form:[6,5],forc:6,tupl:6,basic:2,somehow:6,state:[6,3,4],link:6,newer:6,oauth:[2,1,5],followerslookup:[0,1],worker_sigignor:6,getassoci:5,"true":[6,2,5],bug:6,privileg:6,count:6,utc:2,oauth2:5,attr:6,task_time_limit:6,gid:6,"default":[6,3,5],caller:6,bucket:6,maximum:6,day_of_week:[6,3],planet:6,redirect_nam:5,below:6,stacktrac:6,ensur:3,con_secret_kei:2,otherwis:3,firstmethod:6,sync_everi:6,"0x10bcb5420":[],connect:[6,0,7],what:[6,0,7],logfil:6,featur:[6,2],uid:6,evalu:6,userpassauth:2,taskpool:6,dure:6,parser:6,pid:6,doesn:[6,5,7],repres:[6,1],autoscal:6,ready_queu:6,exist:[6,5],shortcut:1,file:[6,2,3,7],syncdb:7,google_oauth2:5,backends_data:5,check:[6,1,5],saturdai:6,password:[6,2],amqp:6,get_fdmax:6,titl:[],user:[0,1,2,4,5,6,7],get_twitter_account:1,detail:6,associt:5,field:[6,5],possibl:[6,7],valid:[1,5],lookup:[1,7],special:6,test:[6,1,5],public_timelin:2,you:[6,3,2,1,7],workerst:3,max_iter:6,expiration_delta:5,openid:5,mpromis:6,registri:[6,4],celerymon:6,configurationview:6,sequenc:6,time:[6,2,7],toolset:2,exceptioninfo:6,error_messag:5,predic:6,worker_id:3,releas:6,track:6,embed:6,tocken:5,concur:7,param:1,pool:6,leave_charact:5,bitbucket:7,is_du:6,"0x103153420":[],algorithm:6,directori:[6,7],accept:6,is_task_success:3,save:[1,5],rule:6,ignor:6,obj:[6,5],leak:6,"0x1049b5dd0":[],cookbook:6,ready_callback:6},objtypes:{"0":"py:module","1":"py:function","2":"py:attribute","3":"py:method","4":"py:class","5":"py:exception","6":"py:data"},titles:["Welcome to EggDiscover&#8217;s documentation!","Followerslookup","The Twitter Module","The Django Celery Module","External apps used in this project","The User Social Auth Module","The Celery Module","Installation"],objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","attribute","Python attribute"],"3":["py","method","Python method"],"4":["py","class","Python class"],"5":["py","exception","Python exception"],"6":["py","data","Python data"]},filenames:["index","followerslookup","twitter","djcelery","externalapps","social_auth","celery","install"]})

documentation/build/social_auth.html

     <script type="text/javascript" src="_static/underscore.js"></script>
     <script type="text/javascript" src="_static/doctools.js"></script>
     <link rel="top" title="EggDiscover 0.1 documentation" href="index.html" />
-    <link rel="up" title="External apps used in rook" href="externalapps.html" />
+    <link rel="up" title="External apps used in this project" href="externalapps.html" />
     <link rel="next" title="The Django Celery Module" href="djcelery.html" />
-    <link rel="prev" title="External apps used in rook" href="externalapps.html" /> 
+    <link rel="prev" title="External apps used in this project" href="externalapps.html" /> 
   </head>
   <body>
     <div class="related">
           <a href="djcelery.html" title="The Django Celery Module"
              accesskey="N">next</a> |</li>
         <li class="right" >
-          <a href="externalapps.html" title="External apps used in rook"
+          <a href="externalapps.html" title="External apps used in this project"
              accesskey="P">previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li>
-          <li><a href="externalapps.html" accesskey="U">External apps used in rook</a> &raquo;</li> 
+          <li><a href="externalapps.html" accesskey="U">External apps used in this project</a> &raquo;</li> 
       </ul>
     </div>  
 
 <span id="fields"></span><h3>Fields<a class="headerlink" href="#module-social_auth.fields" title="Permalink to this headline">¶</a></h3>
 <dl class="class">
 <dt id="social_auth.fields.JSONField">
-<em class="property">class </em><tt class="descclassname">social_auth.fields.</tt><tt class="descname">JSONField</tt><big>(</big><em>verbose_name=None</em>, <em>name=None</em>, <em>primary_key=False</em>, <em>max_length=None</em>, <em>unique=False</em>, <em>blank=False</em>, <em>null=False</em>, <em>db_index=False</em>, <em>rel=None</em>, <em>default=&lt;class django.db.models.fields.NOT_PROVIDED at 0x10262e668&gt;</em>, <em>editable=True</em>, <em>serialize=True</em>, <em>unique_for_date=None</em>, <em>unique_for_month=None</em>, <em>unique_for_year=None</em>, <em>choices=None</em>, <em>help_text=''</em>, <em>db_column=None</em>, <em>db_tablespace=None</em>, <em>auto_created=False</em>, <em>validators=</em><span class="optional">[</span><span class="optional">]</span>, <em>error_messages=None</em><big>)</big><a class="reference internal" href="_modules/social_auth/fields.html#JSONField"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#social_auth.fields.JSONField" title="Permalink to this definition">¶</a></dt>
+<em class="property">class </em><tt class="descclassname">social_auth.fields.</tt><tt class="descname">JSONField</tt><big>(</big><em>verbose_name=None</em>, <em>name=None</em>, <em>primary_key=False</em>, <em>max_length=None</em>, <em>unique=False</em>, <em>blank=False</em>, <em>null=False</em>, <em>db_index=False</em>, <em>rel=None</em>, <em>default=&lt;class django.db.models.fields.NOT_PROVIDED at 0x4d43410&gt;</em>, <em>editable=True</em>, <em>serialize=True</em>, <em>unique_for_date=None</em>, <em>unique_for_month=None</em>, <em>unique_for_year=None</em>, <em>choices=None</em>, <em>help_text=''</em>, <em>db_column=None</em>, <em>db_tablespace=None</em>, <em>auto_created=False</em>, <em>validators=</em><span class="optional">[</span><span class="optional">]</span>, <em>error_messages=None</em><big>)</big><a class="reference internal" href="_modules/social_auth/fields.html#JSONField"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#social_auth.fields.JSONField" title="Permalink to this definition">¶</a></dt>
 <dd><p>Simple JSON field that stores python structures as JSON strings
 on database.</p>
 <dl class="method">
 <span id="utils"></span><h2>Utils<a class="headerlink" href="#module-social_auth.utils" title="Permalink to this headline">¶</a></h2>
 <dl class="function">
 <dt id="social_auth.utils.group_backend_by_type">
-<tt class="descclassname">social_auth.utils.</tt><tt class="descname">group_backend_by_type</tt><big>(</big><em>items</em>, <em>key=&lt;function &lt;lambda&gt; at 0x102c295f0&gt;</em><big>)</big><a class="reference internal" href="_modules/social_auth/utils.html#group_backend_by_type"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#social_auth.utils.group_backend_by_type" title="Permalink to this definition">¶</a></dt>
+<tt class="descclassname">social_auth.utils.</tt><tt class="descname">group_backend_by_type</tt><big>(</big><em>items</em>, <em>key=&lt;function &lt;lambda&gt; at 0x5266320&gt;</em><big>)</big><a class="reference internal" href="_modules/social_auth/utils.html#group_backend_by_type"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#social_auth.utils.group_backend_by_type" title="Permalink to this definition">¶</a></dt>
 <dd><p>Group items by backend type.</p>
 </dd></dl>
 
 
   <h4>Previous topic</h4>
   <p class="topless"><a href="externalapps.html"
-                        title="previous chapter">External apps used in rook</a></p>
+                        title="previous chapter">External apps used in this project</a></p>
   <h4>Next topic</h4>
   <p class="topless"><a href="djcelery.html"
                         title="next chapter">The Django Celery Module</a></p>
           <a href="djcelery.html" title="The Django Celery Module"
              >next</a> |</li>
         <li class="right" >
-          <a href="externalapps.html" title="External apps used in rook"
+          <a href="externalapps.html" title="External apps used in this project"
              >previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li>
-          <li><a href="externalapps.html" >External apps used in rook</a> &raquo;</li> 
+          <li><a href="externalapps.html" >External apps used in this project</a> &raquo;</li> 
       </ul>
     </div>
     <div class="footer">

documentation/build/twitter.html

     <script type="text/javascript" src="_static/underscore.js"></script>
     <script type="text/javascript" src="_static/doctools.js"></script>
     <link rel="top" title="EggDiscover 0.1 documentation" href="index.html" />
-    <link rel="up" title="External apps used in rook" href="externalapps.html" />
+    <link rel="up" title="External apps used in this project" href="externalapps.html" />
+    <link rel="next" title="The Celery Module" href="celery.html" />
     <link rel="prev" title="The Django Celery Module" href="djcelery.html" /> 
   </head>
   <body>
           <a href="py-modindex.html" title="Python Module Index"
              >modules</a> |</li>
         <li class="right" >
+          <a href="celery.html" title="The Celery Module"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
           <a href="djcelery.html" title="The Django Celery Module"
              accesskey="P">previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li>
-          <li><a href="externalapps.html" accesskey="U">External apps used in rook</a> &raquo;</li> 
+          <li><a href="externalapps.html" accesskey="U">External apps used in this project</a> &raquo;</li> 
       </ul>
     </div>  
 
   <h4>Previous topic</h4>
   <p class="topless"><a href="djcelery.html"
                         title="previous chapter">The Django Celery Module</a></p>
+  <h4>Next topic</h4>
+  <p class="topless"><a href="celery.html"
+                        title="next chapter">The Celery Module</a></p>
   <h3>This Page</h3>
   <ul class="this-page-menu">
     <li><a href="_sources/twitter.txt"
           <a href="py-modindex.html" title="Python Module Index"
              >modules</a> |</li>
         <li class="right" >
+          <a href="celery.html" title="The Celery Module"
+             >next</a> |</li>
+        <li class="right" >
           <a href="djcelery.html" title="The Django Celery Module"
              >previous</a> |</li>
         <li><a href="index.html">EggDiscover 0.1 documentation</a> &raquo;</li>
-          <li><a href="externalapps.html" >External apps used in rook</a> &raquo;</li> 
+          <li><a href="externalapps.html" >External apps used in this project</a> &raquo;</li> 
       </ul>
     </div>
     <div class="footer">

documentation/source/install.rst

 
 And copy the project somewhere in your file system
 
->>> hg clone http://bitbucket.com/boblefrag/eggDiscover .
+>>> hg clone https://bitbucket.org/boblefrag/eggdiscover .
 
 Go in the created directory :
 
->>> cd eggDiscover
+>>> cd eggdiscover
 
 And install the requirements
 
->>> pip install requires.txt
+>>> pip install requirements.txt
 
 
 Configure your application

followerslookup/templates/how-to.html

 To get user following a particular twitter user use the username in
 the url. For exemple, to get NicolasSarkozy followers :
 <a href="/users/lookup/NicolasSarkozy/">/users/lookup/NicolasSarkozy/</a>
-All query parameters are usable. At the time of writing, only 2
-account are selectable : NicolasSarkozy and davewave  
+All query parameters are usable. At the time of writing
+account selectable are :
+<ul> 
+  <li>NicolasSarkozy</li>
+  <li>evajoly</li>
+  <li>PhilippePoutou</li>
+  <li>MLP_officiel</li>
+  <li>bayrou</li>
+  <li>melenchon2012</li>
+  <li>fhollande</li>
+</ul>
 </p>
 </div>
 {% endblock precontent %}
Add a comment to this file

followerslookup/urls.py

File contents unchanged.

followerslookup/views.py

 from models import User, TwitterUser
 from django.views.generic import ListView,DetailView
 from django.http import HttpResponse
+from django.conf import settings
 import csv,codecs
+import os
 try:
     from cStringIO import StringIO
 except ImportError:
 class CsvGenericListView(GenericListViewMixin, ListView):
 
     def render_to_response(self,context):
+        if "complete" in self.kwargs :
+            filename_list = []
+            for k,v in self.request.GET.iteritems():
+                filename_list.append(k)
+                filename_list.append(v)
+                
+            relative_path = '-'.join(filename_list)
+            base_path = '/%s/%s/'%(settings.MEDIA_ROOT,self.kwargs['user'])
+            path = base_path+relative_path
+            if not os.path.exists(base_path):
+                     os.makedirs(base_path)
+            
+            csv_file = open("%s%s"%(path,'-user.csv'),"w")
+            self.get_csv_response(self.convert_context_to_csv(context,csv_file = csv_file))
+            csv_file.close()
+            return HttpResponse("requested file : %s will be generated on our server"%self.kwargs['user'])
+                                  
+                                                              
         return self.get_csv_response(self.convert_context_to_csv(context))
 
     
                             **httpresponse_kwargs)
         resp['Content-Disposition'] = 'attachment; filename=users.csv'
         return resp
-    def convert_context_to_csv(self, context):
-        csv_file = StringIO()
+    def convert_context_to_csv(self, context, csv_file = StringIO()):
         writer = csv.writer(csv_file)
         writer.writerow(User._meta.get_all_field_names())
         for obj in context["object_list"]:
                 else:
                     row.append(unicode(getattr(obj,elem)).encode("utf-8"))
             writer.writerow(row)
+        if type(csv_file) == file:
+            return
         return csv_file.getvalue()
         

registration/templates/blocks/main_menu.html

     {%endblock extramenu%}
 
     <ul class="nav pull-right">
+      <li><a href="/doc/build/">Documentation</a></li>
       <li><a href="#">About</a></li>
       <li><a href="#">Contact</a></li>
     </ul>
 docutils==0.8.1
 httplib2==0.7.2
 kombu==2.0.0
-mercurial==2.1
 oauth2==1.5.211
 pep8==0.6.1
-psycopg2==2.4.1
 python-dateutil==1.5
 python-openid==2.2.5
 simplejson==2.3.2
 
 # Absolute filesystem path to the directory that will hold user-uploaded files.
 # Example: "/home/media/media.lawrence.com/media/"
-MEDIA_ROOT = ''
+
 
 # URL that handles the media served from MEDIA_ROOT. Make sure to use a
 # trailing slash.
 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
-MEDIA_URL = ''
+MEDIA_URL = 'http://boblefrag.pilotsystems.net/media/'
 
 # Absolute path to the directory static files should be collected to.
 # Don't put anything in this directory yourself; store your static files
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.