{ "info": { "author": "Michael Brooks", "author_email": "mjbrooks@uw.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Topic :: Utilities" ], "description": "Twitter Monitor\n===============\n\n[![Build Status](https://travis-ci.org/michaelbrooks/twitter-monitor.svg?branch=master)](https://travis-ci.org/michaelbrooks/twitter-monitor)\n[![Coverage Status](https://coveralls.io/repos/michaelbrooks/twitter-monitor/badge.svg?branch=master)](https://coveralls.io/r/michaelbrooks/twitter-monitor?branch=master)\n\nA Twitter streaming library built on [Tweepy](https://github.com/tweepy/tweepy) that enables dynamic tracking\nof the [filtered Twitter Streaming API](https://dev.twitter.com/docs/api/1.1/post/statuses/filter).\n\nThis library provides a framework that you can use to build your own dynamic Twitter term tracking system.\nYou will want to do three things:\n\n1. Create a subclass of `TermChecker` that knows how to look for tracked terms (e.g. in a database or a file).\n There is a `FileTermChecker` provided as an example.\n2. Create a subclass of `JsonStreamListener` that does something interesting with the tweets. Maybe write tweets\n to a file a database.\n3. Start an instance of the `DynamicTwitterStream` class, which ties it all together.\n\nThere is also a `stream_tweets` script you can use to get started\nstreaming tweets more quickly. More information is [below](#streaming-script).\n\n\n####Installation\n\nThis package is available on PyPI [here](https://pypi.python.org/pypi/twitter-monitor).\n\n```bash\n$ pip install twitter-monitor\n```\n\n\n### Simple Streaming Script\n\nThis package includes a `stream_tweets` script that\nconnects to Twitter using your API key, reads\na list of filter terms from a file, and streams\ntweets to stdout.\n\nTo use `stream_tweets`, you will need to create a file\ncontaining your filter terms, one per line.\nThe script will look for `track.txt` in the current directory,\nbut you can override this.\nYou also need to provide your Twitter API key info.\n\nBy default, an empty tracking file will result in no tweets\nbeing captured. If you want to instead capture unfiltered tweets\nusing the `sample` API endpoint, you can use the \"unfiltered\" options\n(details below).\n\nWhen you run `stream_tweets`, informational messages will be\nprinted out to stderr, while tweets will be printed to stdout,\none tweet per line, in JSON format.\nThis makes it convenient to redirect the output into a file or another program:\n\n```bash\n$ stream_tweets > tweets.json\n```\n\nThe required settings can be provided via environment variables,\na `.ini` file, or command-line arguments.\nThe command-line arguments take precedent:\n\n```bash\n$ stream_tweets --api-key XXXX --api-secret XXXX \\\n --access-token XXXX --access-token-secret XXXX \\\n --track-file my/track/file.txt \\\n --poll-interval 15\n```\n\nThe `--poll-interval` option defines how often to check the track file\nfor updated terms. You can also use the option `--unfiltered TRUE` to\nenable capturing tweets without terms.\n\nAlternatively, one or more of the options may be defined in a `.ini` file.\nThe script will search in the current directory for `twitter_monitor.ini`, but this can be overridden\nusing the `--ini-file` argument.\nBelow is an example `twitter_monitor.ini`:\n\n```ini\n[twitter]\napi_key=XXXX\napi_secret=XXXX\naccess_token=XXXX\naccess_token_secret=XXXX\ntrack_file=my/track/file.txt\npoll_interval=15\nunfiltered=TRUE\n```\n\nIf options are not defined on the command line or in an ini file,\nenvironment variables are checked. Below are the names of the corresponding\nenvironment variables:\n\n```bash\nTWITTER_API_KEY=XXXX\nTWITTER_API_SECRET=XXXX\nTWITTER_ACCESS_TOKEN=XXXX\nTWITTER_ACCESS_TOKEN_SECRET=XXXX\nTWITTER_TRACK_FILE=my/track/file.txt\nTWITTER_POLL_INTERVAL=15\nTWITTER_UNFILTERED=TRUE\n```\n\nCustom Usage\n-------------\n\nBelow is a simple example of how to set up and initialize a dynamic Twitter stream.\nThis example uses the `FileTermChecker` and default `JsonStreamListener` implementations.\nThere is a working example in the `twitter_monitor/basic_stream.py` file.\n\n```python\nimport tweepy\nimport twitter_monitor\n\n# The file containing terms to track\nterms_filename = \"tracking_terms.txt\"\n\n# How often to check the file for new terms\npoll_interval = 15\n\n# Your twitter API credentials\napi_key = 'YOUR API KEY'\napi_secret = 'YOUR API SECRET'\naccess_token = 'YOUR ACCESS TOKEN'\naccess_token_secret = 'YOUR ACCESS TOKEN SECRET'\n\nauth = tweepy.OAuthHandler(api_key, api_secret)\nauth.set_access_token(access_token, access_token_secret)\n\n# Construct your own subclasses here instead\nlistener = twitter_monitor.listener.JsonStreamListener()\nchecker = twitter_monitor.checker.FileTermChecker(filename=terms_filename)\n\n# Start and maintain the streaming connection...\nstream = twitter_monitor.DynamicTwitterStream(auth, listener, checker)\nwhile True:\n try:\n # Loop and keep reconnecting in case something goes wrong\n # Note: You may annoy Twitter if you reconnect too often under some conditions.\n stream.start_polling(poll_interval)\n except Exception as e:\n print e\n time.sleep(1) # to avoid craziness with Twitter\n```\n\n\n### Checking for Terms\n\nTo create a custom `TermChecker`, you need to override the `update_tracking_terms(self)` method.\nThis method must return a *set* of terms. `update_tracking_terms()` will be called\non your checker periodically to refresh the term list.\n\nThe `twitter_monitor.checker.FileTermChecker` class is included as an example.\n\nIf you are not using filter terms, construct your DynamicTwitterStream\nobject with the `unfiltered` keyword argument set to True.\n\n### Handling Tweets\n\nThe Twitter streaming API emits various types of messages.\nThe `JsonStreamListener` class includes stub methods for handling each of these.\nPlease refer to the [documentation](https://dev.twitter.com/docs/streaming-apis/messages) for more information\nabout what these messages mean.\n\nCreate a subclass of `JsonStreamListener`, overriding the handler methods for any message types you wish to respond to.\nHere is a simple Listener that just prints out tweets:\n\n```python\nimport twitter_monitor\nimport json\n\nclass PrintingListener(twitter_monitor.JsonStreamListener):\n\n def on_status(self, status):\n print json.dumps(status, indent=3)\n\n def on_limit(self, track):\n print \"Horrors, we lost %d tweets!\" % track\n```\n\nNote that the `on_exception()` handler is a bit different. It is called when there is some exception\nfrom within the tweepy streaming thread. By default the exception will be stored in the `stream_exception` field\non your listener object.\n\nMore info about how listeners are used may be gleaned from the\n[Tweepy source code](https://github.com/tweepy/tweepy/blob/master/tweepy/streaming.py#L22).\n\nQuestions and Contributing\n--------------------------\n\nFeel free to post questions and problems on the issue tracker. Pull requests welcome!\n\nUse `python setup.py test` to run tests.\n\n\n### Creating a release\n\n1. Increment the version number in `setup.py`. Commit and push.\n2. Create a new Release in GitHub with the appropriate version tag.\n3. Run `setup.py sdist bdist` to build the distribution for PyPi.\n4. Run `twine upload -u USERNAME -p PASSWORD dist/*` to upload to PyPi.\n You must have [twine](https://github.com/pypa/twine) installed.", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/michaelbrooks/twitter-monitor/archive/v0.3.0.zip", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/michaelbrooks/twitter-monitor", "keywords": "twitter,streaming,tweepy,filter", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "twitter-monitor", "package_url": "https://pypi.org/project/twitter-monitor/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/twitter-monitor/", "project_urls": { "Download": "https://github.com/michaelbrooks/twitter-monitor/archive/v0.3.0.zip", "Homepage": "https://github.com/michaelbrooks/twitter-monitor" }, "release_url": "https://pypi.org/project/twitter-monitor/0.3.0/", "requires_dist": null, "requires_python": null, "summary": "A Twitter streaming library built on tweepy that enables dynamic term tracking", "version": "0.3.0" }, "last_serial": 1724431, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "b758533ecee64b1beaf9f5f08a1cfc21", "sha256": "fce0a50b721cea39e5257cbc0bfc41f3b9e0bdea7f8f3780adfad5b55498ce2a" }, "downloads": -1, "filename": "twitter-monitor-0.1.1.win-amd64.exe", "has_sig": false, "md5_digest": "b758533ecee64b1beaf9f5f08a1cfc21", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 235936, "upload_time": "2014-03-08T03:53:34", "url": "https://files.pythonhosted.org/packages/8a/7e/cb3a36afa886eed7eb7f55cd0b5fa4ef5a081bdfffcf7f5c7a624ad4ec52/twitter-monitor-0.1.1.win-amd64.exe" }, { "comment_text": "", "digests": { "md5": "acc20f2e8e50c6082caad88afa83aab0", "sha256": "46eebf69a0096bdc5367913b358971a92924569ffb3081cfd0e6019651dfb21f" }, "downloads": -1, "filename": "twitter-monitor-0.1.1.zip", "has_sig": false, "md5_digest": "acc20f2e8e50c6082caad88afa83aab0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18802, "upload_time": "2014-03-08T03:53:31", "url": "https://files.pythonhosted.org/packages/13/81/0e8869f70909afe44ee0dfabd175e8c0e7872e2daa917ba8a295d0e138c7/twitter-monitor-0.1.1.zip" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "089465813266fcda9b91ac540ff293f3", "sha256": "5e5be1e469a771f663679364fddc7be0914706bf3b3e64a265bced5bd21477f6" }, "downloads": -1, "filename": "twitter-monitor-0.2.0.win-amd64.exe", "has_sig": false, "md5_digest": "089465813266fcda9b91ac540ff293f3", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 243393, "upload_time": "2014-04-02T06:44:54", "url": "https://files.pythonhosted.org/packages/1e/bb/b3b4f58a385f3537b2a3d0951ddab964d4d0393cff8324647b4d9c3b1805/twitter-monitor-0.2.0.win-amd64.exe" }, { "comment_text": "", "digests": { "md5": "54c84469d20594cbb8a30e79e43f7d0a", "sha256": "751858100b136a3f311e309bf804dc15c58b3b7f51ff5ca65caa3eb6028b8a2d" }, "downloads": -1, "filename": "twitter-monitor-0.2.0.zip", "has_sig": false, "md5_digest": "54c84469d20594cbb8a30e79e43f7d0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24669, "upload_time": "2014-04-02T06:44:51", "url": "https://files.pythonhosted.org/packages/cd/78/3f6f8f9bb9348bac8118be9dd2e756f5ef5fd74185a40d158db2318942d4/twitter-monitor-0.2.0.zip" } ], "0.2.1": [ { "comment_text": "built for Windows-7", "digests": { "md5": "dba869631e9782daf25d4ecf9b292311", "sha256": "91a9cd05566db0f3d661b7ac6ffaf560bd52ebd223df9d592301ae1bc12bf1c4" }, "downloads": -1, "filename": "twitter-monitor-0.2.1.win-amd64.zip", "has_sig": false, "md5_digest": "dba869631e9782daf25d4ecf9b292311", "packagetype": "bdist_dumb", "python_version": "any", "requires_python": null, "size": 22305, "upload_time": "2014-04-18T18:08:40", "url": "https://files.pythonhosted.org/packages/f9/ec/cebdb6e16368bfb7e381ccc22f8d10d6dc1372805ea16d3775bc8580419a/twitter-monitor-0.2.1.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "1798a7e1a9bc75d9e53a142a8051d10f", "sha256": "431e89bf1e25549992819d879358eb563dfaa6ca9c1840812122f3e3d654a70f" }, "downloads": -1, "filename": "twitter-monitor-0.2.1.zip", "has_sig": false, "md5_digest": "1798a7e1a9bc75d9e53a142a8051d10f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24695, "upload_time": "2014-04-18T18:08:37", "url": "https://files.pythonhosted.org/packages/25/7e/881bd96e50875d4acc30cc2e4279b93f8a6e364b73129cc87ae8c504db95/twitter-monitor-0.2.1.zip" } ], "0.2.10": [ { "comment_text": "", "digests": { "md5": "286b9d1fda2f07176768302086018151", "sha256": "68acc874417fae2919db0dffa2b410f01dc213057a64c1175f61c7f78138d1c2" }, "downloads": -1, "filename": "twitter-monitor-0.2.10.win-amd64.zip", "has_sig": false, "md5_digest": "286b9d1fda2f07176768302086018151", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24363, "upload_time": "2015-02-14T03:21:51", "url": "https://files.pythonhosted.org/packages/df/31/061c1c239c80644a2ce0f4418e2a78e044c257bd9da1943256b7f963ba29/twitter-monitor-0.2.10.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "317b82a6ba1b1cb834f4f7c994b84713", "sha256": "c052fbde658f32dd4815e8d75bb45ae160270f04a95261bf34d695312ac66d07" }, "downloads": -1, "filename": "twitter-monitor-0.2.10.zip", "has_sig": false, "md5_digest": "317b82a6ba1b1cb834f4f7c994b84713", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30768, "upload_time": "2015-02-14T03:22:01", "url": "https://files.pythonhosted.org/packages/32/98/945d94ce84e720b94921f279f2d7cf2d0cdccd13c2fdb9956351eda43063/twitter-monitor-0.2.10.zip" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "d71f5901eceef33129e7f3740ac89cf5", "sha256": "29d07f00274352730c9ca7a93588d1f5137265d41aa336605e6783b36f2121fc" }, "downloads": -1, "filename": "twitter-monitor-0.2.2.win-amd64.exe", "has_sig": false, "md5_digest": "d71f5901eceef33129e7f3740ac89cf5", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 243530, "upload_time": "2014-06-02T18:53:49", "url": "https://files.pythonhosted.org/packages/d3/0a/a2326cad1ab9d8cb40353e403d146c93d7f15dbd6c98ed70fedd5efca960/twitter-monitor-0.2.2.win-amd64.exe" }, { "comment_text": "", "digests": { "md5": "52220a5b4f19e44081357a917f54fe71", "sha256": "627a49846bff1c58e02633f03869049363c15f67c096e325945a0ad835c41aec" }, "downloads": -1, "filename": "twitter-monitor-0.2.2.zip", "has_sig": false, "md5_digest": "52220a5b4f19e44081357a917f54fe71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24939, "upload_time": "2014-06-02T18:53:46", "url": "https://files.pythonhosted.org/packages/81/8e/3c9be76ad4f66e155c9037f66e07658fe687b4b300b7807b336ac4e99766/twitter-monitor-0.2.2.zip" } ], "0.2.3": [], "0.2.4": [ { "comment_text": "", "digests": { "md5": "74d4cfbb476c64d2574d7def17d57eff", "sha256": "fe5668d971386a0b6aa5649f60c51991847443e90a573c8cb9199e990eba4921" }, "downloads": -1, "filename": "twitter-monitor-0.2.4.win-amd64.zip", "has_sig": false, "md5_digest": "74d4cfbb476c64d2574d7def17d57eff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20607, "upload_time": "2015-01-30T21:50:18", "url": "https://files.pythonhosted.org/packages/99/5a/5bc165c278bbb6b641cc87d4925d7d545895f15c0d237ea2f93e972b8974/twitter-monitor-0.2.4.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "0e6e7fc66f09073efbd877cd5b9c3577", "sha256": "0b58bbd36400740bbe379f7a15e6c3f50295d3f93e00f1de6b239d16a20be1e9" }, "downloads": -1, "filename": "twitter-monitor-0.2.4.zip", "has_sig": false, "md5_digest": "0e6e7fc66f09073efbd877cd5b9c3577", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26054, "upload_time": "2015-01-30T21:50:21", "url": "https://files.pythonhosted.org/packages/60/91/85011730476625bab98f5e953aa1d1acea584421c338833b617c2ef6b6a0/twitter-monitor-0.2.4.zip" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "ca05164704e4967a5f4787e0d6e49493", "sha256": "9a50f897d0abcfc49a1c35b137914645e1e1e97309f100e7b56f868c6dc94423" }, "downloads": -1, "filename": "twitter-monitor-0.2.5.win-amd64.zip", "has_sig": false, "md5_digest": "ca05164704e4967a5f4787e0d6e49493", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23174, "upload_time": "2015-02-01T00:39:10", "url": "https://files.pythonhosted.org/packages/c8/b3/82fb5928009464b4e4d4988451d438bd287e7d8010aeba50752dd204fe1f/twitter-monitor-0.2.5.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "41ebcbdf078c6fe124b4ae50598a6c07", "sha256": "0f7a71c9280a879ef2d1c10fd0df18e4fb1d26e55867cfa7b66a33b1541f3fe9" }, "downloads": -1, "filename": "twitter-monitor-0.2.5.zip", "has_sig": false, "md5_digest": "41ebcbdf078c6fe124b4ae50598a6c07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26189, "upload_time": "2015-02-01T00:39:14", "url": "https://files.pythonhosted.org/packages/d9/ab/052428fd8e72b913837bc54b7f472381b677030f48b5887750140580b8d3/twitter-monitor-0.2.5.zip" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "f4565371bae484c2527e2a2f94b52d0b", "sha256": "015410b21c4fed6405d7f9882b264154d445580177529857d6cc19a6bf5b03b8" }, "downloads": -1, "filename": "twitter-monitor-0.2.6.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "f4565371bae484c2527e2a2f94b52d0b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15287, "upload_time": "2015-02-02T03:22:36", "url": "https://files.pythonhosted.org/packages/43/90/2339b478f020c987da0bbb02a49d8fd2a64defbc3176eed52f6a477e8c6c/twitter-monitor-0.2.6.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "30ec129d37464918c9fddc92084bdf9b", "sha256": "9f59a114daedaf69467339ddfec41eaf90128851571e13b113a89d28b2a2124a" }, "downloads": -1, "filename": "twitter-monitor-0.2.6.tar.gz", "has_sig": false, "md5_digest": "30ec129d37464918c9fddc92084bdf9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18561, "upload_time": "2015-02-02T03:22:39", "url": "https://files.pythonhosted.org/packages/98/af/e5390f8478b29f66c6477295279b87a64ab3fde8a32eee54e027f28d6ad9/twitter-monitor-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "b066ff6bab13919e405730667f0c06ba", "sha256": "12930afc7f0fdcf7d7c231b0fbd18ed70afcd28786954426d10fc74380a70ef6" }, "downloads": -1, "filename": "twitter-monitor-0.2.7.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "b066ff6bab13919e405730667f0c06ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16249, "upload_time": "2015-02-13T18:34:56", "url": "https://files.pythonhosted.org/packages/e4/02/6e03a0193a2a63bbed67141b704c4897b49f7ae5dbeaf1cee481f693083f/twitter-monitor-0.2.7.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "1f77a5ceaec6de1c145745d17c7fbf61", "sha256": "7a344018f3599048725f430a12592222b4d43928f945790ce548019949350064" }, "downloads": -1, "filename": "twitter-monitor-0.2.7.tar.gz", "has_sig": false, "md5_digest": "1f77a5ceaec6de1c145745d17c7fbf61", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19012, "upload_time": "2015-02-13T18:34:58", "url": "https://files.pythonhosted.org/packages/ec/10/863808fda38bca29c54365467c2209669468c6a6c38e0db807df4e8767e7/twitter-monitor-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "cff492a9ab77c33dae5e3f3775bc93a1", "sha256": "1399ebc9ef4eb63951fbf23c3b30432986cf5d4908f3bf9bcf7001a47b260f10" }, "downloads": -1, "filename": "twitter-monitor-0.2.8.win-amd64.zip", "has_sig": false, "md5_digest": "cff492a9ab77c33dae5e3f3775bc93a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24339, "upload_time": "2015-02-14T03:01:14", "url": "https://files.pythonhosted.org/packages/c3/2b/9fc49fe02918afd41380986f3713bd6a6d691f6e87a1127d732bfdd66de4/twitter-monitor-0.2.8.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "623f7526461157cb096eb37beb5370b7", "sha256": "c3380cb8ef0327ac030faedf3a0b304985970d33e0fa45c3e8547c2bdc7855c4" }, "downloads": -1, "filename": "twitter-monitor-0.2.8.zip", "has_sig": false, "md5_digest": "623f7526461157cb096eb37beb5370b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30701, "upload_time": "2015-02-14T03:01:16", "url": "https://files.pythonhosted.org/packages/90/b7/5077eb541203ba1cb1aef53e25856b6002f5cfcd52b7ab459cf01aae962c/twitter-monitor-0.2.8.zip" } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "911e165cde46fdd8e7417a3d95fb37c3", "sha256": "73180b2b286e062e5fa061d4e2522e7b155eaadb4fe38c38e89df5b839118221" }, "downloads": -1, "filename": "twitter-monitor-0.2.9.win-amd64.zip", "has_sig": false, "md5_digest": "911e165cde46fdd8e7417a3d95fb37c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24361, "upload_time": "2015-02-14T03:11:32", "url": "https://files.pythonhosted.org/packages/34/1f/4d2018ed5d5e2b4d5dd88964f4fe0f08e857d78a863296ca164e948cac89/twitter-monitor-0.2.9.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "6173750363f847d075332bcc06eff539", "sha256": "e8c64fe1492d18b3a976543f47be0cb4090c153300de09f53cf8a4d09c728941" }, "downloads": -1, "filename": "twitter-monitor-0.2.9.zip", "has_sig": false, "md5_digest": "6173750363f847d075332bcc06eff539", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30726, "upload_time": "2015-02-14T03:11:34", "url": "https://files.pythonhosted.org/packages/e3/79/91d2947bd58c94feab87d2ac68d1bc029aa8f3c82cc1fcda023e3138dd6f/twitter-monitor-0.2.9.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a6d6a7a6db1223720b3de0583dfadf80", "sha256": "a3d48f37ef3d4aa52983c629b4402aa47771b7d4971c71ae039068304306a289" }, "downloads": -1, "filename": "twitter-monitor-0.3.0.win-amd64.zip", "has_sig": false, "md5_digest": "a6d6a7a6db1223720b3de0583dfadf80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22875, "upload_time": "2015-09-15T22:43:50", "url": "https://files.pythonhosted.org/packages/12/d0/9e842b715f512786feea7cf39ef636b2b46b986f627e26fe1aa4e7d5c9ac/twitter-monitor-0.3.0.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "375710576ae3440efc098ed56843108e", "sha256": "2370e8b56063118f34cf66cbc5f4f62d070eaccfe1412f40a31a5cd3f8150a72" }, "downloads": -1, "filename": "twitter-monitor-0.3.0.zip", "has_sig": false, "md5_digest": "375710576ae3440efc098ed56843108e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30947, "upload_time": "2015-09-15T22:43:54", "url": "https://files.pythonhosted.org/packages/e2/23/3e7b82e2d25c1c782acf76c7092773c22ecccad48dc2076af021aa95370d/twitter-monitor-0.3.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a6d6a7a6db1223720b3de0583dfadf80", "sha256": "a3d48f37ef3d4aa52983c629b4402aa47771b7d4971c71ae039068304306a289" }, "downloads": -1, "filename": "twitter-monitor-0.3.0.win-amd64.zip", "has_sig": false, "md5_digest": "a6d6a7a6db1223720b3de0583dfadf80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22875, "upload_time": "2015-09-15T22:43:50", "url": "https://files.pythonhosted.org/packages/12/d0/9e842b715f512786feea7cf39ef636b2b46b986f627e26fe1aa4e7d5c9ac/twitter-monitor-0.3.0.win-amd64.zip" }, { "comment_text": "", "digests": { "md5": "375710576ae3440efc098ed56843108e", "sha256": "2370e8b56063118f34cf66cbc5f4f62d070eaccfe1412f40a31a5cd3f8150a72" }, "downloads": -1, "filename": "twitter-monitor-0.3.0.zip", "has_sig": false, "md5_digest": "375710576ae3440efc098ed56843108e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30947, "upload_time": "2015-09-15T22:43:54", "url": "https://files.pythonhosted.org/packages/e2/23/3e7b82e2d25c1c782acf76c7092773c22ecccad48dc2076af021aa95370d/twitter-monitor-0.3.0.zip" } ] }