Heus Habr!
Nuper vidi versionem receptam programmandi fluminis "Quomodo ad applicationem telae tuae in Flask creare". Et decrevi in ββaliquo consilio meam scientiam confirmare. Diu nesciebam quid scriberem et idea ad me veniebat: "Cur mini- posticum in Flask?"
Primae optiones ad effectum deducendi et facultates posticae statim in capite meo apparuerunt. Sed decrevi statim indicem facultatum posticae facere;
- Scire quomodo aperire websites
- Habere order versus accessum
- Aperire programmata imagines, videos
Primum igitur punctum perfacile est ad efficiendum moduli interretiarii usus. Secundum punctum os moduli utentem efficere decrevi. Et tertius etiam est per os moduli, sed utar "nexibus" (plura postea).
Scribo servo
Ita, *drumroll* omnes servo codice:
from flask import Flask, request
import webbrowser
import os
import re
app = Flask(__name__)
@app.route('/mycomp', methods=['POST'])
def hell():
json_string = request.json
if json_string['command'] == 'test':
return 'The server is running and waiting for commands...'
if json_string['command'] == 'openweb':
webbrowser.open(url='https://www.'+json_string['data'], new=0)
return 'Site opening ' + json_string['data'] + '...'
if json_string['command'] == 'shell':
os.system(json_string['data'])
return 'Command execution ' + json_string['data'] + '...'
if json_string['command'] == 'link':
links = open('links.txt', 'r')
for i in range(int(json_string['data'])):
link = links.readline()
os.system(link.split('>')[0])
return 'Launch ' + link.split('>')[1]
if __name__ == '__main__':
app.run(host='0.0.0.0')
Totum codicem iam proieci, essentiam explicare tempus est.
Totum signum decurrit in computatro locali in portu 5000. Ut cum servo penitus, JSON POST petitionem mittere debemus.
JSON peto structuram;
{βcommandβ: βcomecommandβ, βdataβ: βsomedataβ}
Bene facit sensum ut 'mandatum' sit mandatum quod volumus exequi. Et 'data' sunt praeceptum argumentorum.
Potes scribere et mittere JSON petitiones mutuas cum servo manually (petitiones adiuvabunt). Aut tu clientem solare potes scribere.
Scribens clientis
Code:
import requests
logo = ['nn',
'****** ********',
'******* *********',
'** ** ** **',
'** ** ** ** Written on Python',
'******* ** **',
'******** ** **',
'** ** ** ** Author: ROBOTD4',
'** ** ** **',
'** ** ** **',
'******** *********',
'******* ********',
'nn']
p = ''
iport = '192.168.1.2:5000'
host = 'http://' + iport + '/mycomp'
def test():
dict = {'command': 'test', 'data': 0}
r = requests.post(host, json=dict)
if r.status_code == 200:
print (r.content.decode('utf-8'))
def start():
for i in logo:
print(i)
start()
test()
while True:
command = input('>')
if command == '':
continue
a = command.split()
if command == 'test':
dict = {'command': 'test', 'data': 0}
r = requests.post(host, json=dict)
if r.status_code == 200:
print (r.content.decode('utf-8'))
if a[0] == 'shell':
for i in range(1, len(a)):
p = p + a[i] + ' '
dict = {'command': 'shell', 'data': p}
r = requests.post(host, json=dict)
if r.status_code == 200:
print (r.content.decode('utf-8'))
p = ''
if a[0] == 'link':
if len(a) > 1:
dict = {'command': 'link', 'data': int(a[1])}
r = requests.post(host, json=dict)
if r.status_code == 200:
print (r.content.decode('utf-8'))
else:
print('ΠΠΎΠΌΠΌΠ°Π½Π΄Π° Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²!')
if a[0] == 'openweb':
if len(a) > 1:
dict = {'command': 'openweb', 'data': a[1]}
r = requests.post(host, json=dict)
if r.status_code == 200:
print (r.content.decode('utf-8'))
else:
print('ΠΠΎΠΌΠΌΠ°Π½Π΄Π° Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²!')
if a[0] == 'set':
if a[1] == 'host':
ip = a[2] + ':5000'
if command == 'quit':
break
Resolutiones:
Imprimis petitiones moduli importantur (pro commercio cum servo). Infra descriptiones functionum incepti et probati sunt. Et erit circulus in quo magica fiunt. Legistine codicem? Sic intelligis significationem magicae quae fit in cyclo. Intra imperium - supplicium est. Testa - imperat ad lineam mandatum (logica est scala).
Test - reprehendo si servo currit (postica)
Link - uti a "brevis"
Openweb - agemus website
Quit - exitus client
Set - occasum IP computatrum tuum in loci network
Nunc efficitur eleifend magna.
Est nexus.txt fasciculus proximus servo. Nexus (plenam viam) ad imaginum continet (videos, imagines, programmata).
Structura talis est:
ΠΏΠΎΠ»Π½ΡΠΉ_ΠΏΡΡΡ>ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅
ΠΏΠΎΠ»Π½ΡΠΉ_ΠΏΡΡΡ>ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅
exitum
Servum posticum habemus in retis localis moderandis computatralibus (in retis wi-fi). Technice, possumus clientem ex aliqua arte Pythonis interpretis habere.
PS mandatum statutum addidi ut, si computatrale in retis localibus IP aliud tribuatur, directe in clientelam mutari possit.
Source: www.habr.com