Flask-applikation: Lär dig Python med exempel och övningar
- Flask-applikation: Lär dig Python med exempel och övningar
- Vad är Flask?
- Fördelar med Flask för webbapplikationer
- Installation och grundläggande konfiguration av Flask
- Skapa en enkel Flask-applikation
- Hantera URL:er och rutter
- Integrering av databaser med PostgreSQL och SQLAlchemy
- Bearbeta text med Requests och BeautifulSoup
- Analysera text med NLTK
- Använda Redis för uppgiftsköer
- Implementering av frontend med Angular
- Skapa anpassade D3-diagram för datavisualisering
- Distribuera din Flask-applikation med Heroku
- Sammanfattning och nästa steg
Flask-applikation: Lär dig Python med exempel och övningar
Att utveckla en Flask-applikation är en utmärkt väg för att lära sig Python genom exempel. Med Flask kan såväl nybörjare som erfarna programmerare bygga kraftfulla webbapplikationer baserade på Python, vilket ger en djup förståelse för hur webbteknologier fungerar. Denna artikel syftar till att ge en omfattande guide som hjälper dig att bygga en Flask-applikation, inklusive praktiska övningar och exempel.
Genom att följa med i denna artikel kommer du att kunna skapa en funktionell flask exempelapplikation som kan hantera text och analysera data effektivt. Vi kommer att gå igenom varje steg noggrant, från installation till distribution, vilket ger värdefull insikt i flask lärande och webbutveckling med Python. Låt oss börja!
Vad är Flask?
Flask är en lättviktsramverk för att bygga webbapplikationer med Python. Den skapades av Armin Ronacher och lanserades år 2010. Flask är känd för sin enkelhet och flexibilitet, vilket gör den till ett populärt val för utvecklare som vill skapa både små och stora applikationer. Nackdelen med Flask är att den inte just har lika många inbyggda funktioner som jämförbara ramverk såsom Django, men detta ger även utvecklaren mer frihet att välja de komponenter som bäst passar deras behov.
En av de mest tilltalande aspekterna av Flask är dess minimalistiska design. Den är byggd på WSGI (Web Server Gateway Interface) och följer principerna för mikro-ramverk, vilket gör att den kan köras var som helst där en server är installerad. Utvecklare kan enkelt använda Flask för att bygga RESTful API:er, webbplatser, och mer komplexa system. Att lära sig Flask är ett utmärkt sätt att fördjupa sig i webbutveckling med Python.
Fördelar med Flask för webbapplikationer
Det finns många fördelar med att använda Flask för att bygga webbapplikationer, här är några av de mest framträdande:
- Låg inlärningskurva: Flask är enkelt att förstå och det är lätt att komma igång. Detta gör det till ett utmärkt val för nybörjare som vill lära sig webbutveckling med Python.
- Flexibilitet: Med Flask kan utvecklaren välja vilka bibliotek och verktyg de vill inkludera, vilket ger en skräddarsydd applikation.
- Bred community: Flask har en stor och aktiv community. Det innebär att det finns många resurser och support tillgängliga online, vilket är till stor hjälp när du stöter på problem.
- Enkelhet: Flask har en ren och minimalistisk kodbas vilket gör det enklare att underhålla och vidareutveckla.
Installation och grundläggande konfiguration av Flask
För att komma igång med din flask exempelapplikation behöver du installera Flask. Följ dessa steg:
- Öppna din terminal eller kommandoprompt.
- Skapa ett nytt virtuellt miljö genom att köra:
python -m venv myenv
- Aktivera den virtuella miljön:
För Windows:myenvScriptsactivate
För MacOS/Linux:source myenv/bin/activate
- Installera Flask genom att köra:
pip install Flask
När Flask är installerat kan vi börja skapa vår grundläggande Flask-applikation. Skapa en fil med namnet `app.py` och fyll den med följande kod:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Välkommen till min Flask-applikation!"
if __name__ == '__main__':
app.run(debug=True)
Genom att köra kommandot python app.py
kommer Flask-applikationen att starta på din lokala server, vanligtvis http://127.0.0.1:5000
.
Skapa en enkel Flask-applikation
Nu när du har installerat Flask och har en grundläggande applikation, låt oss bygga vidare på den. Vi kommer att skapa en flask exempelapplikation som tar emot användarinmatning och visar ett resultat. Vi kommer att lägga till en HTML-form för att skicka data till servern.
Uppdatera din `app.py` fil med följande kod:
from flask import Flask, request, render_template
app = Flask(__name__)
@app.route('/')
def home():
return render_template('index.html')
@app.route('/submit', methods=['POST'])
def submit():
text = request.form['text']
return f'Du har skickat: {text}'
if __name__ == '__main__':
app.run(debug=True)
Skapa också en mapp som heter `templates` och skapa en HTML-fil som heter `index.html` inuti den med följande innehåll:
Flask applikation
Med detta kommer din Flask-applikation att ta emot text som användaren skriver in och sedan visa den på en annan sida. Detta är en grundläggande flask lärande övning som visar hur man skapa formulär och hanterar POST-förfrågningar.
Hantera URL:er och rutter
Att hantera URL:er och rutter är en viktig del av Flask. Rutter avgör hur servern svarar på olika URL-förfrågningar. I vår applikation har vi redan skapat två rutter: `/` (hem) och `/submit` (för att hantera formulärinmatningar).
För att skapa flera rutter kan vi enkelt definiera nya funktioner med @app.route()
och sedan koppla dem till olika URL:er. Låt oss lägga till en ny rutt som visar en lista av exempel:
@app.route('/examples')
def examples():
example_list = ["Exempel 1", "Exempel 2", "Exempel 3"]
return '
'.join(example_list)
Nu kan du navigera till http://127.0.0.1:5000/examples
för att se listan av exempel. Flask gör det enkelt att hantera och definiera rutter, vilket är en stor fördel när man utvecklar merkomplexa webbapplikationer.
Integrering av databaser med PostgreSQL och SQLAlchemy
Som applikationen växer kommer du ofta att behöva hantera data med hjälp av en databas. Flask integreras enkelt med databaser, inklusive PostgreSQL, genom hjälp av SQLAlchemy. Först, se till att du har PostgreSQL installerat och körande.
- Installera SQLAlchemy och psycopg2 genom att köra:
pip install SQLAlchemy psycopg2
- Skapa en databas i PostgreSQL som din Flask-applikation kan koppla upp sig mot.
Låt oss uppdatera vår Flask-applikation för att använda SQLAlchemy. Du kan skapa en modellen för att hantera databasinteraktion:
from flask_sqlalchemy import SQLAlchemy
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://username:password@localhost/databasnamn'
db = SQLAlchemy(app)
class Example(db.Model):
id = db.Column(db.Integer, primary_key=True)
text = db.Column(db.String(200))
def __repr__(self):
return f''
Med modellen på plats kan vi skapa och hantera databasposter. Det är också en bra övning i flask lärande då vi lär oss om ORM (Object-Relational Mapping) genom SQLAlchemy.
Bearbeta text med Requests och BeautifulSoup
I många fall kommer du att behöva bearbeta extern text från webben. Detta kan göras med hjälp av Requests och BeautifulSoup. Först måste du installera dessa paket:
pip install requests beautifulsoup4
Låt oss skapa en ny rutt i vår Flask-applikation för att hämta och bearbeta innehåll från en webbsida:
import requests
from bs4 import BeautifulSoup
@app.route('/fetch')
def fetch():
url = 'http://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
return soup.title.string
Navigera till http://127.0.0.1:5000/fetch
för att se titeln på den valda webbsidan. Detta är ett kraftfullt sätt att använda Flask för att dra in och bearbeta information från andra källor.
Analysera text med NLTK
För mer avancerad bearbetning av text kan vi använda NLTK (Natural Language Toolkit). Installera NLTK med:
pip install nltk
Här är ett exempel på hur du skulle kunna använda NLTK för att analysera en text som kommit in via din Flask-applikation:
import nltk
@app.route('/analyze', methods=['POST'])
def analyze():
text = request.form['text']
tokens = nltk.word_tokenize(text)
return f'Antalet ord: {len(tokens)}'
Med NLTK kan du göra mycket mer som att göra sentimentanalys, delning i meningar och mer. Tillsammans med Flask ger det en kraftfull plattform för att bygga textanalyserande appar!
Använda Redis för uppgiftsköer
För applikationer som kräver bakgrundsuppgifter kan vi använda Redis. Tillsammans med Flask hjälper Redis till att uppdatera användargränssnittet i realtid. Installera Redis genom att följa dokumentationen. Installera också Flask-Redis:
pip install Flask-Redis
När Redis är installerat kan vi ställa in det i vår Flask-applikation:
from flask_redis import FlaskRedis
redis_store = FlaskRedis(app)
@app.route('/queue', methods=['POST'])
def queue():
redis_store.lpush('task_queue', 'process_task')
return 'Uppgift har lagts i kön.'
Detta gör att du kan lägga till uppgifter i en kö för bearbetning utan att blockera användargränssnittet. Redis fungerar som en mycket effektiv och snabb databas, perfekt för uppgiftsköer.
Implementering av frontend med Angular
För att skapa dynamiska användargränssnitt kan vi använda Angular. Istället för att rendera all HTML på servern, kan Flask bara tillhandahålla en API och Angular hantera frontend-upplevelsen.
För att integrera Angular med Flask, skapa en SPA (Single Page Application) där Flask tillhandahåller JSON-data. Du kan hämta dessa data via HTTP-anrop i dina Angular-tjänster.
import json
@app.route('/api/data')
def api_data():
return json.dumps({'data': 'This is data from Flask'})
I din Angular-applikation kan du använda HttpClient för att hämta denna data och visa den på sidan. Detta är en kraftfull kombination som ger en smidig användarupplevelse.
Skapa anpassade D3-diagram för datavisualisering
Att visualisera data är ett viktigt steg i att presentera information. D3.js är ett populärt JavaScript-bibliotek som kan användas för att skapa dynamiska och anpassade datavisualiseringar. Du kan inkludera D3.js i din Angular-applikation för att skapa interaktiva diagram. Detta gör datan mer granskad och lättare att förstå.
// Använd D3.js för att skapa ett diagram
d3.select('svg')
.append('circle')
.attr('cx', 50)
.attr('cy', 50)
.attr('r', 40);
Distribuera din Flask-applikation med Heroku
När din Flask-applikation är klart är nästa steg att distribuera den så att andra kan använda den. En av de enklaste plattformarna för att distribuera Flask-appar är Heroku. För att distribuera en Flask-app behöver du skapa en Procfile
och en requirements.txt
i din projektmapp.
web: python app.py
Med requirements.txt
listar du alla Python-paket som din applikation använder. Du kan skapa detta genom att köra: pip freeze > requirements.txt
.
När du har förberett allt, logga in på Heroku och skapa en ny app. Följ sedan deras dokumentation för att distribuera din Flask-applikation. Swipe upp i molnet och gör din applikation tillgänglig för världen!
Sammanfattning och nästa steg
Att bygga en flask exempelapplikation är en fantastisk start på din resa mot att bli en webbapputvecklare med Python. Genom att integrera flera teknologier som PostgreSQL, NLTK, Angular och Redis, får du värdefull erfarenhet och kunskap som är eftertraktat på arbetsmarknaden.
Denna artikel har täckt de grundläggande stegen för att installera Flask, bygga din första applikation, hantera URL:er, integrera databaser och arbeta med data. Du har även lärt dig att bearbeta och analysera text baserat på externa webbsidor och mycket mer.
Framöver rekommenderar vi att du fortsätter att experimentera med Flask och dess möjligheter. Prova att bygga mer avancerade funktioner, lära dig mer om deployment och andra webbteknologier. Det finns alltid mer att lära sig och utvecklas inom flask lärande och Python genom exempel.
Tack för att du läste vår artikel, du kan se alla artiklar i våra webbkartor eller i Sitemaps
Tyckte du att den här artikeln var användbar? Flask-applikation: Lär dig Python med exempel och övningar Du kan se mer här Elektronik.Tack för att du läser innehållet i Maker Electronics
Leave a Reply
Se mer relaterat innehåll