Python Daily
2.57K subscribers
1.48K photos
53 videos
2 files
38.9K links
Daily Python News
Question, Tips and Tricks, Best Practices on Python Programming Language
Find more reddit channels over at @r_channels
Download Telegram
Building a surveillance system, some ideas would be a lot of help

I'm building a [surveillance system](https://imgoat.com/uploads/f4922f4556/17373.JPG) for my home, but I don't know where to start.

First off, I'm familiar with Django servers, I'm familiar with automate (android app), I'm half decent at python and I know how to google things. But I'm not sure as of yet what exactly I should be googling.

What I need help with is finding the best way to stream video from my android to my raspberry, and my raspberry over the internet. I'd like to use django, automate and IP Webcam (another android app) because I already know how these work, but If there's an inherent problem with that, or some other route is much easier, I'd just use something different.

Also, what is the safest encryption to use for this kind of thing?

When I'm done, I'll post a report here so the community can learn and emulate, and on that note, I recently built a IOT home automation thing that waters my plants with R.Pi+django for my electronic engineering degree, is there any interest for a translated copy of the report?

/r/django
https://redd.it/6c53ue
can (or should) ipython or Jupyter console be able to edit a class?

Hello. I am using ipython3, and also trying with jupyter console and have not found a way to %edit a class that I enter in.

If I enter in something like:

class Parent(object):
def test(self):
print("testing")

I do not get any errors and can call and use objects of that type. But I am not able to %edit that class. For example, I get:

/usr/local/lib/python3.6/site-packages/IPython/core/magics/code.py:503: UserWarning: The file where `<class '__main__.Parent'>` was defined cannot be read or found.
'cannot be read or found.' % data)


But if I enter a function, like 'def testit():', then I can %edit testit as I would expect.

Is there something I am not entering to distinguish the class I am trying to edit?


Thanks!

/r/IPython
https://redd.it/6c7vhh
Upload and process a remote file called by an API REST call with a Django backend

The application is written in Django. I need to A) upload a file (an Excel spreadsheet) from a remote location (it could be via HTTP or SFTP), headless, i.e. without a form--could it be a call to an external process?, B) triggered by a signal/API call issued by a remote client. The file will then be processed (it could be synchronously or asynchronously) to update a database in the backend (this latter part is already working and is implemented with a file which is read locally). What is the best strategy/architecture, and tools (packages, commands, etc.) to use to solve both points A) and B) above?

/r/django
https://redd.it/6c9za7
Help with differentiating types of users

Hello everyone, I'm a bit confused as to how about I can solve this problem.

I have two types of users: parent and child.

Parent users can CRUD objects, and child users can only view.

What is the best way to create a login system so that creating a user can choose between one of these types and that upon login they are directed the their view of their respective user?


Should I just make a User class with a boolean attribute as Parent=true/false?




/r/flask
https://redd.it/6by6zv
Unique Form Urls to update Model Instances

I have a model with a project number field and notes field. I would like to generate a URL for each project number, and on that page have a form field that would allow me to update that note. Any ideas?

I'm getting a name error in my view that "request" is not defined.

Here's what I have so far...

Model:

class Projectsummary(models.Model):
number = models.CharField(db_column='Number', primary_key=True, max_length=50) # Field name made lowercase.
projectnote = models.TextField(db_column='ProjectNote', blank=True, null=True)
overrunnote = models.TextField(db_column='OverrunNote', blank=True, null=True)

View:

def inputs(requset, number):
formnumber = Projectsummary.objects.get(number=number)
form = ProjNoteField(request.POST or None, instance=formnumber)
if form.is_valid():
form.save()
return HttpResponseRedirect('app/pmhub/')
context = {'form': form}
return render(requset, 'projectinputfields.html', context)

Forms:

class ProjNoteField(forms.ModelForm):
class Meta:
model = Projectsummary
fields = ['projectnote', 'overrunnote']

/r/django
https://redd.it/6cc5vp
Passing variables within functions

Hello everyone,

I have few function which look something like this:

@login_required
def get_pages(request, startDate='2017-01-01', endDate='today'):
do_something..

@login_required
def get_speed(request, startDate='2017-01-01', endDate='today'):
do_something..

etc..

These functions get the data for the correct period and save it in my db. Now I want a new function which calls them changing the startDate & endDate parameter, so I can update metrics daily.

I tried something like this:

def update_last2days(requests):
get_speed('yesterday','today') # The API accepts yesterday & today as input format. Consider it as YYYY-MM-DD
get_pages('yesterday','today')
return redirect('/report?updated=true')

I also tried:

def update_last2days(requests):
get_speed(request, 'yesterday','today')
get_pages(request, 'yesterday','today')
return redirect('/report?updated=true')

But I keep getting `'str' object has no attribute 'user'` and I can't figure out why. How can I call a function with new parameters?

P.s. when I add the values `today` and `yesterday` to the main function all works just fine.

/r/django
https://redd.it/6ccwy3
Porting a program I wrote in python to be a web app. Have questions about how to structure data files.

Okay, so I recently learned python so that I could write a drop logging program for an MMO that I play. It might be sloppy (I don't know, this is my first coding project ever), but all of the features I initially envisioned function properly and I want other people to be able to use it now. Initially I was going to package it into an .exe and distribute that, but after some research and thinking on it for a bit, I've decided it makes more sense and will be better in the long run to make a web app with the same functionality for users to access.

My question is, my drop logger utilizes text files to pull drop table data for monsters from as well as save drop logs to. (I.e. a text file named "monster name droptable.txt" with a tab separated column/row structure for the items it can drop like item name, item quantity, etc...).

Drop logs that users create are also saved and loaded from txt files. I've gone through a few tutorials and it seems Flask would be perfect for making a simple web app that functions the same as my program. But, after looking into databases, I'm not sure how to store my data for retrieval. Is it still okay/efficient to just have static text files on the server and if I want to edit a drop table for a monster, or add a new monster, I can just edit/add a text file? Or should I store this information in a database. I feel like each monster would need it's own database, so is there a limit/problem with having a ton of databases?

As for user saved files. If a user wants to save a drop log to load at a later time, (or download to their computer) I knew I'd have to use a database to store this data (at least a filepath to their specific text drop log file), but should I store the drop logs themselves in databases?

Sorry if these are newbie questions, I'm just ready to jump into this and rebuild my program as a web app, but I don't even know which tutorials I need to be looking at because I don't know what's best. I don't want to do it one way only to find out a few days/weeks from now that it was a bad decision and backtrack to square one.

Thank you for any help!

/r/flask
https://redd.it/6ccncc
Anyone tried using Brython in Flask/Python apps? What were your thoughts?

[Brython](http://brython.info/) is a Python-to-JavaScript tool, for anyone unaware.

/r/flask
https://redd.it/6br4vb
Logging number of requests to a rest api

Hi Reddit, I am working on tracking the number of times our rest api endpoints are called over time. What are some best practices for doing this?

I'm thinking I could write some python to update a JSON file each time the API is called, however this API is called thousands of times a day and am afraid this might be way to expensive of a process to launch each time it's called.

Any help is appreciated!

/r/flask
https://redd.it/6bqf4e
Question: How to verify that a user is posting (POST) to a flask webapp only using my CLI?

I am building an application which send POST request to an endpoint. I want to block the user from manually posting the POST request using some tools. I want to make sure that the user is posting to the flask webapp from my python script. What is the best way to implement this?

/r/Python
https://redd.it/6cfi2i