All Projects → Fitzy1293 → Redditsfinder

Fitzy1293 / Redditsfinder

Licence: mit
Archive a reddit user's post history. Formatted overview of a profile, JSON containing every post, and picture downloads. Uses the pushshift API.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Redditsfinder

Lemmy
🐀 Building a federated link aggregator in rust
Stars: ✭ 5,728 (+20357.14%)
Mutual labels:  reddit
Bulk Downloader For Reddit
Downloads media from reddit posts
Stars: ✭ 756 (+2600%)
Mutual labels:  reddit
Datadoubleconfirm
Simple datasets and notebooks for data visualization, statistical analysis and modelling - with write-ups here: http://projectosyo.wix.com/datadoubleconfirm.
Stars: ✭ 24 (-14.29%)
Mutual labels:  webscraping
Clone Wars
100+ open-source clones of popular sites like Airbnb, Amazon, Instagram, Netflix, Tiktok, Spotify, Whatsapp, Youtube etc. See source code, demo links, tech stack, github stars.
Stars: ✭ 12,604 (+44914.29%)
Mutual labels:  reddit
Shreddit
Remove your comment history on Reddit as deleting an account does not do so.
Stars: ✭ 669 (+2289.29%)
Mutual labels:  reddit
Furi Kura
Linux application indicator for reddit
Stars: ✭ 7 (-75%)
Mutual labels:  reddit
Redditdownloader
Scrapes Reddit to download media of your choice.
Stars: ✭ 521 (+1760.71%)
Mutual labels:  reddit
Reddit Twitter Bot
Subreddit bot to upload newest image posts to a Twitter feed
Stars: ✭ 14 (-50%)
Mutual labels:  reddit
Programming Language Subreddits And Their Choice Of Words
How do the different communities talk?
Stars: ✭ 752 (+2585.71%)
Mutual labels:  reddit
Mailinglistscraper
A python web scraper for public email lists.
Stars: ✭ 19 (-32.14%)
Mutual labels:  webscraping
Awesome Subreddits
📝 A curated list of awesome programming subreddits.
Stars: ✭ 646 (+2207.14%)
Mutual labels:  reddit
Infinity For Reddit
A Reddit client for Android
Stars: ✭ 653 (+2232.14%)
Mutual labels:  reddit
Reddit Pgn To Gif
Converts PGN from /r/chess into gifs hosted on imgur and leaves a reddit comment
Stars: ✭ 16 (-42.86%)
Mutual labels:  reddit
An Askreddit List Of Compsci Books
books and resources loved by r/learnprogramming community, compiled by me, a lurker who kept track
Stars: ✭ 598 (+2035.71%)
Mutual labels:  reddit
Webscrapping
R语言爬虫;Python爬虫;rvest;Rcurl
Stars: ✭ 9 (-67.86%)
Mutual labels:  webscraping
Gazpacho
🥫 The simple, fast, and modern web scraping library
Stars: ✭ 525 (+1775%)
Mutual labels:  webscraping
Dank
Here lies the greatest Reddit app that was never released
Stars: ✭ 783 (+2696.43%)
Mutual labels:  reddit
Huginn
Create agents that monitor and act on your behalf. Your agents are standing by!
Stars: ✭ 33,694 (+120235.71%)
Mutual labels:  webscraping
Sig To Googlecalendar
A python script to get class schedules on UFLA's SIG and convert to a .CSV file to use in Google Calendar
Stars: ✭ 14 (-50%)
Mutual labels:  webscraping
Redditbot
Discord bot for reddit.com
Stars: ✭ 17 (-39.29%)
Mutual labels:  reddit

redditsfinder - reddit user info

pip3 install redditsfinder

A program to get reddit user post data.

The colored terminal features for the CLI are from https://github.com/willmcgugan/rich
pip3 install rich which is one the coolest python packages.

https://github.com/LoLei/redditcleaner pip3 install redditcleaner was also a massive help for dealing with reddit's markdown.

Installation

pip3 install redditsfinder

Running redditsfinder

Test it on yourself to make sure it works (or another valid user name).

redditsfinder yourusername

In a python file

Currently working on making it usable in python files.

As of version 1.3.2 you can use it to make standard python objects.

from redditsfinder import submissions
from pprint import pprint

#Pretty prints all submission dicts.
pprint(submissions(user='spez', log=True))



import redditsfinder
from pprint import pprint

'''
This code uses redditsfinder to get text based posts.
'''

def byKey(posts, postKey=''):
    return [v for dict in posts  for k, v in dict.items() if k == postKey]

user = 'spez'
lim = 5

comments = redditsfinder.comments(lim=lim, user=user)
submissions = redditsfinder.submissions(lim=lim, user=user)

textPosts = {
    'bodies': byKey(comments, postKey='body'),
    'selftexts': byKey(submissions, postKey='selftext')
    }

pprint(textPosts)

CLI usage

Returns every post to a different JSON file for each user and formats a table in the terminal for a quick view.
Takes an arbitrary number of user names, such that there is at least one user name.


redditsfinder username
redditsfinder [options] username_0 username_1 username_2 ...

Newline separated file

Uses user names from a file.

-f or --file
redditsfinder [options] -f line_separated_text_file.txt

Optional args

-pics returns URLs of image uploads.
-pics -d or -pics --download downloads them.
-q or --quiet turns off non log related print statements.

User object


{
    "comments": [
      {
          "id": "comment_1",
          "created_utc": 0,
          "subreddit": "",
          "score": 1,
          "link_id": "",
          "parent_id": "",
          "datetime": "",
          "permalink": "",
          "body": ["word_1", "word_2", "word_3", "..."]

      },

      {
          "id": "comment_2",
          "created_utc": 0,
          "subreddit": "",
          "score": 1,
          "link_id": "",
          "parent_id": "",
          "datetime": "",
          "permalink": "",
          "body": ["word_1", "word_2", "word_3", "..."]

      }

      ],

    "submissions": [

      {
        "id": "submission_1",
        "created_utc": 0,
        "subreddit": "",
        "score": 1,
        "link_id": "",
        "parent_id": "",
        "datetime": "",
        "url": "",
        "full_link": "",
        "selftext": ["word_1", "word_2", "word_3", "..."]

      },

      {
          "id": "submission_2",
          "created_utc": 0,
          "subreddit": "",
          "score": 1,
          "link_id": "",
          "parent_id": "",
          "datetime": "",
          "url": "",
          "full_link": "",
          "selftext": ["word_1", "word_2", "word_3", "..."]

      }

    ]

}

Example Pushshift request log

Imgur Image

Example terminal table

Imgur Image

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].