* ΠΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π² ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΈΠ·ΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅. ΠΠΎΠ΄ Π»Π΅ΠΊΠΎ Π½Π΅Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈΡ ΠΏΠΎΠ³Π»Π΅Π΄ Π½Π° Π»ΡΠ±ΠΈΠΌΠ°ΡΠ° ΠΆΠ΅Π½Π°.
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ Π½ΡΠΌΠ° ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° Π³ΡΡΠ±Π½Π°ΡΠ½ΠΈΡΠ΅ ΡΠ΅ΡΠ»Π΅ΠΊΡΠΈ ΠΊΠ°ΡΠΎ Tinder. ΠΠ° Π΄Π° Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅, Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½ Π΅Π΄ΠΈΠ½ ΠΏΡΡΡΡ, Π·Π° Π΄Π° ΠΏΠ»ΡΠ·Π½Π΅ΡΠ΅ ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π½Π΅Π²ΡΠΎΠ½Π°, Π·Π° Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ°ΡΠ° ΠΈΠ»ΠΈ ΠΌΡΠΆΠ΅ΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π²ΠΈ Ρ Π°ΡΠ΅ΡΠ²Π°Ρ Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ. ΠΠ΄Π΅Π°Π»Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° Π³ΡΡΠ±Π° ΡΠΈΠ»Π° ΠΏΡΠΈ ΠΈΠ·Π±ΠΎΡΠ° Π½Π° ΡΠΈΡΡ.
ΠΠΈΡΠ»Π΅Ρ , ΡΠ΅ ΡΠΎΠ²Π° Π΅ Π΄ΠΎΠ±ΡΡ Π½Π°ΡΠΈΠ½ Π΄Π° ΠΎΠΏΠΈΡΠ°ΠΌ ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΡΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ²Π° Π³ΡΠ°ΡΠΈΡΠ½Π° ΠΊΠ°ΡΡΠ°. ΠΡΡΠ°Π²Π° ΡΠ°ΠΌΠΎ Π΄Π° ΠΎΠ±ΡΡΠ½Ρ Π½Π° ΠΆΠ΅Π½Π° ΡΠΈ, ΡΠ΅ Π½ΡΠΌΠ°ΠΌ Π½ΡΠΆΠ΄Π° ΠΎΡ Π½ΠΎΠ²Π° ΠΏΠΎ-Π΄Π΅Π±Π΅Π»Π° ΠΆΠ΅Π½Π°, Π° ΠΏΡΠΎΡΡΠΎ ΡΡΠ΅Π½ΠΈΡΠ°ΠΌ Π½Π΅Π²ΡΠΎΠ½Π½ΠΈ ΠΌΡΠ΅ΠΆΠΈ.
ΠΠ°ΠΊΡΠ² Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ ΠΌΡΠ΅ΠΆΠΈΡΠ΅ Π·Π° Π·Π°ΠΏΠΎΠ·Π½Π°Π½ΡΡΠ²Π°
ΠΠΌΠ°ΡΠ΅ ΡΠ°ΠΊΡΠ² ΡΠ΅ΡΡΡΡ - ΠΡΠ»ΠΈ ΠΠ°Π΄ΠΈΡΡΠ½. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ΅Π½, ΡΡΡ ΡΠ»ΠΎΠ³Π°Π½Π° βΠΠΈΠ²ΠΎΡΡΡ Π΅ ΠΊΡΠ°ΡΡΠΊ. ΠΠΌΠ°ΠΉΡΠ΅ Π°ΡΠ΅ΡΠ°. ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡ ΡΠ° ΠΆΠ΅Π½Π΅Π½ΠΈ ΠΌΡΠΆΠ΅, ΡΡΡΡΠ΅ΡΠΈ Π°ΡΠ΅ΡΠ° ΠΎΡΡΡΡΠ°Π½ΠΈ. ΠΠΎΠ½Π΅ΡΠΈΠ·Π°ΡΠΈΡΡΠ° ΡΡΡΠΎ Π΅ Π·Π°Π±Π°Π²Π½Π° - Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΡΠΎ "Ρ Π°ΡΡΠ΅ΡΠ΅ ΡΠΎΡΠΊΠΈ, Π·Π° Π΄Π° Ρ Π°ΡΠ΅ΡΠ°ΡΠ΅ ΠΈ ΠΏΠΈΡΠ΅ΡΠ΅", ΡΠ΅ ΠΏΠΎΠΈΡΠΊΠ°Ρ Π° $19, Π·Π° Π΄Π° ΠΈΠ·ΡΡΠΈΡΡ Π°ΠΊΠ°ΡΠ½ΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π±Π΅Π· ΡΠ»Π΅Π΄Π°.
ΠΡΠ΅Π· 2015 Π³. ΡΠ°ΠΉΡΡΡ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ ΠΈΠ·ΡΠ΅ΡΠ΅ ΠΈ 60 GB Π»ΠΈΡΠ½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈΠ·ΡΠ΅ΠΊΠΎΡ
Π° Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ. Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΌΠ½ΠΎΠ³ΠΎΡΠΎ ΡΠ½ΠΈΡΠΎΠΆΠ΅Π½ΠΈ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π°, ΡΠΎΠ²Π° ΠΈΠ·ΡΠΈΡΠ°Π½Π΅ Π΄Π°Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΈΡΠ΅. ΠΠΈΠ½Π°Π³ΠΈ ΡΡΠΌ ΠΏΠΎΠ΄ΠΎΠ·ΠΈΡΠ°Π», ΡΠ΅ Π² ΡΠ°ΠΉΡΠΎΠ²Π΅ΡΠ΅ Π·Π° Π·Π°ΠΏΠΎΠ·Π½Π°Π½ΡΡΠ²Π° ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΌΡΠΆΠ΅, Π½ΠΎ Π² ΡΠ»ΡΡΠ°Ρ ΡΠ΅ ΠΎΠΊΠ°Π·Π° Π΄ΠΎΡΡΠ° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. ΠΡΡΠ½Π°Π»ΠΈΡΡ ΠΠ½Π°Π»ΠΈ ΠΡΠΈΡ
Π’Π°ΠΊΠΎΠ²Π° ΠΏΡΠ΅Π²Π΅Ρ ΠΊΡΠΌ ΠΌΡΠΆΠΊΠΈΡΠ΅ Π°ΠΊΠ°ΡΠ½ΡΠΈ Π΅ ΡΠΈΠΏΠΈΡΠ½ΠΎ Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π° ΡΠΎΠ·ΠΈ ΡΠ΅ΡΡΡΡ, Π½ΠΎ ΠΈ Π·Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΉΡΠΎΠ²Π΅ Π·Π° Π·Π°ΠΏΠΎΠ·Π½Π°Π½ΡΡΠ²Π°. Π‘ΠΈΠ³ΡΡΠ΅Π½ ΡΡΠΌ, ΡΠ΅ ΠΌΠ½ΠΎΠ·ΠΈΠ½Π° ΡΠ° ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ°Π»ΠΈ Ρ ΡΠ°Π·ΠΈ Π½Π΅ΡΡΠΌΠ½Π΅Π½ΠΎ Π½Π΅ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²Π° ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΠ±Π²Π° Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΎΠ±ΠΌΠΈΡΠ»ΠΈΡΠ΅ ΠΏΠΎΠ·Π½Π°Ρ ΠΈ Π΅Π΄Π½ΠΎ ΠΌΠΎΠΌΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°. ΠΠ΅ΠΊΠ° ΠΎΡΡΠ°Π²ΠΈΠΌ Π½Π°ΡΡΡΠ°Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ°Π·ΠΈ ΡΡΠ»ΠΏΠ° ΠΎΡ ΡΠ΅Π½ΠΎΠ²Π΅, Π½ΠΎ ΡΠ°ΠΊΡΡΡ Π΅ Π½Π΅ΠΎΡΠΏΠΎΡΠΈΠΌ, Π±Π°Π»Π°Π½ΡΡΡ Π½Π° ΡΡΡΡΠ΅Π½Π΅ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π½Π΅ Π΅ ΡΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅Π½ Π² ΠΏΠΎΠ»Π·Π° Π½Π° ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ°ΡΠ°.
Π€ΡΠ½ΠΊΡΠΈΡ Tinder
ΠΠ΄Π΅Π°Π»Π½ΠΈΡΡ Π³ΡΡΠ±ΠΈΡΠ½ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΠ»ΠΎΠ²Π΅ΡΠ΅
ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ° Π½Π° ΡΠ°Π·ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Π΅ Π½ΠΈΡΠΊΠ°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΠΏΠΎΠ·Π½Π°Ρ. Π‘ΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π΄Π²Π΅ ΠΏΠ»ΡΠ·Π³Π°Π½ΠΈΡ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΈ Π²Π΅ΡΠ΅ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΡΡΠ΅ Ρ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΠΎΠ²Π΅ΠΊ. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅, ΡΠ΅ ΡΡΡΠΈΡΡ Π΄ΠΈΡΠ±Π°Π»Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΠ»ΠΎΠ²Π΅ΡΠ΅ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ° ΡΠ΅ ΠΈΠΌΠ°Ρ Π΄Π΅ΡΠ΅ΡΠΊΠΈ ΠΌΠ°ΡΠΎΠ²Π΅ Π½Π° Π΄Π΅Π½. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ Π½Π°ΠΉ-Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π½ΡΠΌΠ° Π΄Π° ΠΈΠΌΠ°Ρ Π²ΡΠ΅ΠΌΠ΅ Π΄Π° ΠΎΠ±ΡΡΠ½Π°Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π²Π°Ρ ΡΡΠ΅Π΄ Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΈ.
Π‘ΡΠ²ΡΠ΅ΠΌ ΡΡΠ½ΠΎ Π΅, ΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° ΠΌΠ°Π»ΠΊΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΠΎΡΠ΅Π½ΠΊΠ° Π½Π° Π΄ΡΠ»Π±ΠΎΠΊΠΈΡ Π²ΡΡΡΠ΅ΡΠ΅Π½ ΡΠ²ΡΡ Π½Π° ΡΠΎΠ²Π΅ΠΊ ΡΡΠ΅Π· ΠΏΠΎΠ³Π»Π΅Π΄ ΠΎΡ ΡΠ΅ΠΊΡΠ½Π΄Π° ΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π½Π° ΡΠ½ΠΈΠΌΠΊΠ° ΠΏΠΎ Π±Π°Π½ΡΠΊΠΈ ΠΈΠ»ΠΈ ΡΠΎΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅ΡΠ½Π° ΡΠΎΠ½ΠΈΡΠ°Π½Π° ΠΊΠΎΠ»Π°. ΠΡΠΎ Π·Π°ΡΠΎ, Π°ΠΊΠΎ Π½Π΅ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π±ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½ΠΎ Π½Π° ΡΠ½ΠΈΠΌΠΊΠΈΡΠ΅ ΡΠΈ, Π½ΡΠΌΠ°ΡΠ΅ Π΄ΡΡΠ³ ΠΈΠ·Π±ΠΎΡ, ΠΎΡΠ²Π΅Π½ Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ ΡΠ°Π½ΡΠΎΠ²Π΅ΡΠ΅ ΡΠΈ Ρ ΠΎΡΠΈΠ½ΠΎΠ²ΡΠ²Π°Π½Π΅
Π‘ΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠ° ΠΏΡΡΠ²ΠΎ ΠΌΡΡΡΠΎ, ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ Π·Π° Π½ΠΎΡΠΌΠ°Π»Π½Π° ΡΠΎΡΠ½ΠΎΡΡ. ΠΡΠ΅ΠΊΠΈ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Π΅ Π·Π°Π½ΠΈΠΌΠ°Π²Π°Π» Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, Π·Π½Π°Π΅ ΠΊΠΎΠ»ΠΊΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΡΡΠ±ΡΠ°Π½ ΠΈ Π΅ΡΠΈΠΊΠ΅ΡΠΈΡΠ°Π½ Π½Π°Π±ΠΎΡ ΠΎΡ Π΄Π°Π½Π½ΠΈ. Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ½ΠΎ Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ ΡΠ΅ΡΡΡΡ Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ ΠΊΠ°ΡΠΎ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° Π΄Π°Π½Π½ΠΈ, Π±ΠΈΠ»ΠΎ ΡΠΎ Instagram ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠΎΡΠΈΠ°Π»Π½ΠΈ ΠΌΡΠ΅ΠΆΠΈ. ΠΠΎ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠ΅ Π΅ Π΄Π° ΡΡΠ΅Π½ΠΈΡΠ°ΡΠ΅ Π²ΡΡΡ Ρ ΡΠ΅Π·ΠΈ ΠΏΡΠΎΠ±ΠΈ, Π²ΡΡΡ Ρ ΠΊΠΎΠΈΡΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π² Π±ΡΠ΄Π΅ΡΠ΅.
ΠΠ΅ΠΊΠ° Π²Π·Π΅ΠΌΠ΅ΠΌ Π·Π° ΠΎΡΠ½ΠΎΠ²Π° Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ
from skimage.io import imread, imsave, imshow, show
import matplotlib.pyplot as plt
import pynder
from helpers import get_access_token, get_login_credentials
from io_helper import save_image
email, password, FBID = get_login_credentials()
FBTOKEN = get_access_token(email, password)
session = pynder.Session(facebook_token=FBTOKEN)
while True:
users = session.nearby_users()
for user in users:
photos = user.get_photos()
print("Fetched user photos..")
for photo in photos:
print(photo)
image = imread(photo)
imshow(image)
show()
input_string = "Write 1 to like. Write 2 to dislike."
ans = str(input(input_string)).lower()
if ans == "1":
save_image(image, photo, True)
else:
save_image(image, photo, False)
Π’ΠΎΠ²Π° ΡΠ΅ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΠΌΠ°ΡΠΊΠΈΡΠ°ΡΠ΅ Π½Π°Π±ΠΎΡΠ° ΠΎΡ Π΄Π°Π½Π½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉ-Π±ΡΡΠ·ΠΎ ΡΠ°ΠΌΠΎ Ρ Π΄Π²Π° Π±ΡΡΠΎΠ½Π°. ΠΠ»ΡΡΠΎΠ²ΠΈΡΡ ΠΊΠ°ΠΏΠ°Π½ Π΅, ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° werkzeug Π΅ Π½Π°ΡΡΡΠΈΠ»Π° ΠΎΠ±ΡΠ°ΡΠ½Π°ΡΠ° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ ΠΈ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π°. Π ΠΏΡΠΎΡΠΈΠ²Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° ΡΠ°Π·ΠΈ Π³ΡΠ΅ΡΠΊΠ°.
Traceback (most recent call last):
File "img_scrape.py", line 4, in <module>
from helpers import get_access_token, get_login_credentials
File "/home/someone/tmp/TinderAutomation/helpers.py", line 1, in <module>
import robobrowser
File "/home/someone/tmp/TinderAutomation/venv/lib/python3.6/site-packages/robobrowser/__init__.py", line 3, in <module>
from .browser import RoboBrowser
File "/home/someone/tmp/TinderAutomation/venv/lib/python3.6/site-packages/robobrowser/browser.py", line 8, in <module>
from werkzeug import cached_property
ImportError: cannot import name 'cached_property'
Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ werkzeug==0.16.1 ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² requirements.txt. Π’ΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠ·Π»Π΅ΡΠΈ.
ΠΡΠΎΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΅ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠΎΡΠ½ΠΎ ΡΠΎΠ·ΠΈ Π·Π½Π°ΠΊ. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π½Π΅ ΠΈΠ·Π»Π΅ΡΡ Π·Π° ΠΌΠ΅Π½, Π½ΠΎ ΡΡΠΏΡΡ
Π΄Π° Π³ΠΎ Π²Π·Π΅ΠΌΠ° ΠΎΡ ΠΊΠΎΠ½Π·ΠΎΠ»Π°ΡΠ° Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΠΈ. ΠΠ° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°, ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π½Π°
ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ ΠΊΡΠΌ Π½Π°Π±ΠΎΡΠ° ΠΎΡ Π΄Π°Π½Π½ΠΈ
ΠΠΌΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ Π·Π° Π½Π°Π±ΠΎΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅:
- ΠΠ΄Π΅ΠΊΠ²Π°ΡΠ½ΠΎΡΡ
- ΠΠ΄Π½ΠΎΡΠΎΠ΄Π½ΠΎΡΡ
- ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅
ΠΠΎΡΡΠ°ΡΡΡΠ½ΠΎΡΡΡΠ° Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΏΠΎΠ½Π΅ 10000 XNUMX ΡΠ½ΠΈΠΌΠΊΠΈ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°Π΄Π΅ΠΊΠ²Π°ΡΠ΅Π½ ΠΌΠΎΠ΄Π΅Π». ΠΠ°, ΡΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ. ΠΡΠΎ Π·Π°ΡΠΎ ΠΈΠΌΠ° ΡΡΠ»ΡΠ³ΠΈ ΠΊΠ°ΡΠΎ
ΠΡΠΌΠ° ΠΎΡΠΎΠ±Π΅Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅ΡΠΎ, Π²ΡΠΈΡΠΊΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ³Π»ΠΈ ΠΈ ΠΎΡΠ²Π΅ΡΠ»Π΅Π½ΠΈΠ΅. Π ΠΎΡΠΈΠ»Π°, ΡΠΎΠΊΠ»ΠΈ, Π±Π°Π½ΡΠΊΠΈ ΠΈ ΡΠΊΠΈ ΠΊΠΎΡΡΡΠΌΠΈ. ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΡΠ·Π½ΠΈΠΊΠ½Π΅ Ρ Π΅Π΄Π½Π°ΠΊΠ²ΠΎΡΡΡΠ° Π½Π° Π½Π°Π±ΠΎΡΠ° ΠΎΡ Π΄Π°Π½Π½ΠΈ. Π ΠΈΠ΄Π΅Π°Π»Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΌΠ°ΡΠΊΠΈΡΠ°ΠΌΠ΅ Π½Π°ΡΠ°ΡΠ° ΠΏΡΠΎΠ±Π°, ΡΡ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΡΡΡΠΎΠΈ ΠΎΡ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ ΡΠ°Π²Π½ΠΈ ΡΠ°ΡΡΠΈ. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ βΠΈΠ·ΠΊΡΠΈΠ²Π΅Π½β Π½Π°Π±ΠΎΡ ΠΎΡ Π΄Π°Π½Π½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΎ ΡΠ°Π·ΡΠ΅Π΄ΠΈΡΠ΅ ΡΡΡ ΡΠ½ΠΈΠΌΠΊΠΈ ΠΎΡ Π΄ΡΡΠ³ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ. Π©Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΠΏΠΎ-ΠΊΡΠ°ΡΠΈΠ²ΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΡΠΎ, ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° ΠΎΡ ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ΡΠΎ. ΠΠΎΠ»ΡΡΠΈΡ Π½Π΅ΡΠΎ ΠΎΡ ΠΏΠΎΡΡΠ΄ΡΠΊΠ° Π½Π° 60% ΡΠ»Π°Π΄ΠΊΠΎ. ΠΠ»ΠΈ Π½Π΅ ΡΡΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ΄ΠΈΡΡΠΈΠ², ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΈΠΌΠ°ΠΌ ΠΊΡΡΠΌΠ΅Ρ ΠΈ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Ρ ΡΠ±Π°Π²ΠΈ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ° Π½Π°ΠΎΠΊΠΎΠ»ΠΎ.
ΠΠ΅ ΠΎΡΡ Π²ΡΡΠ»ΡΠΌ ΠΈ Ρ ΠΈΠΏΠΎΡΠ΅Π·Π°ΡΠ°, ΡΠ΅ ΡΡΠ΅Π΄ ΡΡΡ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΡΠΎΠ²Π΅. ΠΠΈΠ΅ ΠΎΠ±ΡΡΠ°Π²Π°ΠΌΠ΅ Π±ΠΎΡ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Ρ Π°ΡΠ΅ΡΠ²Π° Π΄ΡΡΠ³ΠΈΡΠ΅ Π±ΠΎΡΠΎΠ²Π΅. ΠΠΌΠ° ΠΈΠ·Π²Π΅ΡΡΠ½Π° ΠΈΡΠΎΠ½ΠΈΡ Π² ΡΠΎΠ²Π°.
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ
ΠΠΌΠ°ΠΌΠ΅ ΠΊΡΠΏ ΠΌΠ°ΡΠΊΠΈΡΠ°Π½ΠΈ ΡΠ½ΠΈΠΌΠΊΠΈ, Π½ΠΎ ΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈ. ΠΠ΅Π½, Π½ΠΎΡ, ΠΎΡΠ·Π°Π΄ ΠΈ Π΄ΡΡΠ³ΠΈ. Π‘ΡΡ ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°ΠΌ, ΡΠ΅ Π½Π΅ Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΡΠ΅Π½ΠΈΡΠ°ΡΠ΅ Π²ΡΡΡ Ρ ΡΠ½ΠΈΠΌΠΊΠΈ ΠΎΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΡΠ³ΡΠ», ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ±Π°ΡΠ° ΡΠ΅ Π±ΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ, Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Π±ΠΈ Π±ΠΈΠ» Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π»ΠΈΡΠ° ΠΊΠ°ΡΠΎ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ΅Π½ Π·Π½Π°ΠΊ Π·Π° "ΠΊΡΠ°ΡΠΈΠ²ΠΎΡΡ". ΠΡΠ΅ ΠΏΠ°ΠΊ Π·Π° Π½Π°Ρ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ°ΡΠΈ, ΡΠΎΠ²Π° Π΅ ΠΊΠ»ΡΡΠΎΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ.
ΠΠ°ΡΠΎΠ²Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅
Π’ΠΎΠ²Π° Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π·Π°
ΠΠ° ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡ Π΅ΡΠ°ΠΏ, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ Π² ΠΏΡΠΎΠ±Π°ΡΠ° ΠΈΠΌΠ° ΡΠ°ΠΌΠΎ Π»ΠΈΡΠ°, ΠΈΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π΅ΡΠ΅ ΡΠ²Π΅ΡΠ°. ΠΡΡΡΠ½ΠΎΡΡ Π΅Π΄Π²Π° Π»ΠΈ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·Π±ΠΈΡΠ°ΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΡΠ°ΡΠΈΠ²Π° ΡΠΈΠ½Ρ ΠΆΠ΅Π½Π° ΠΠ°Π½Π΄ΠΎΡΠ° ΠΈΠ»ΠΈ ΠΊΡΠ°ΡΠ°Π²ΠΈΡΠ° ΡΡΡ Π·Π΅Π»Π΅Π½Π° ΠΊΠΎΠΆΠ°.
ΠΡΠΈ Ρ
ΠΎΡΠ°ΡΠ° Hue ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΡΡ ΡΠ²ΡΡ Π½Π° ΠΊΠΎΠΆΠ°ΡΠ° Π½Π΅ Π΄ΠΎΠΏΡΠΈΠ½Π°ΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° Π·Π° ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»Π½ΠΎΡΡ.
ΠΡΠΎ Π·Π°ΡΠΎ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΎΠΏΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Π½Π΅Π²ΡΠΎΠ½Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΎ Π½ΠΈΠ²Π° Π½Π° ΡΠΈΠ²ΠΎΡΠΎ.
ΠΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»Π°
ΠΡΠΊΠ°ΠΌ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° ΠΊΠ°ΠΆΠ°, ΡΠ΅ Π±Π΅Π· Π΄ΠΎΠ±ΡΠ° Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡΠ° ΠΈ CUDA Π½Π°ΠΉ-Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΌΠ° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΠΎΠ±ΡΡΠ΅Π½ ΠΌΠΎΠ΄Π΅Π» Π² ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ° Π²ΡΠ΅ΠΌΠ΅Π²Π° ΡΠ°ΠΌΠΊΠ°. ΠΠ°ΡΠΎΠ²Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΡΠ΅ Π½Π°ΡΠΎΡΠ΅ΡΠ΅ ΠΊΡΠΌ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΎΠ±Π»Π°ΡΠΈ ΠΈΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° python-CUDA.
ΠΠ·Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π΅Π½ ΡΡΠΈΡΠ»ΠΎΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΡ Π°Π²ΡΠΎΡΠ° Π½Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ ΠΈ, ΠΈΠ·Π½Π΅Π½Π°Π΄Π²Π°ΡΠΎ, ΡΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π° ΡΠΎΡΠ½ΠΎΡΡ ΠΎΡ ΠΎΠΊΠΎΠ»ΠΎ 72%, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΡ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ.
model = Sequential()
model.add(Convolution2D(32, 3, 3, activation='relu', input_shape=(img_size, img_size, 3)))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Convolution2D(32, 3, 3, activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Convolution2D(64, 3, 3, activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(2, activation='softmax'))
adam = optimizers.SGD(lr=1e-4, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss='categorical_crossentropy',
optimizer= adam,
metrics=['accuracy'])
ΠΠΊΠΎ ΠΈΠΌΠ° Π΄ΠΎΠ±ΡΠ° ΠΏΡΠΎΠ±Π°, ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΠ΅Ρ ΠΌΠΎΠ΄Π΅Π».
Π‘ΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΎΡΠ°
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π½Π° Π°Π²ΡΠΎΡΠ° Π½Π° Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π·Π° Π³ΠΎΡΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π·Π° Π±ΡΡΠ·ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅ΡΡΠ°. ΠΡΡΡΠ½ΠΎΡΡ ΡΠΎΠΉ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΡΡΠ° Π΄ΠΎΠ±ΡΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΠΈ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΡΠ°ΡΡΠΈΡΠ°Π½ Π½Π° Π½Π°ΡΠΈΡ
ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ
Π‘ΠΈΠ³ΡΡΠ½ΠΎ ΡΡΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»Π°Π΄ΡΠΊ. Π ΠΈΠΌΠ°ΠΌ Π±ΠΎΠ³Π°Ρ Π²ΡΡΡΠ΅ΡΠ΅Π½ ΡΠ²ΡΡ. ΠΠΌΠ°ΠΌ Π½Π΅ΡΠΎ ΠΎΡ ΠΏΠΎΡΡΠ΄ΡΠΊΠ° Π½Π° 13 ΠΌΠ°ΡΠ° Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΡΠ°Ρ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΡΠΈ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ°ΡΠ° ΠΏΠΈΡΠ°Ρ
Π° ΠΏΡΡΠ²ΠΈ.
Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡ
Π° ΠΌΠ½ΠΎΠ³ΠΎ Ρ
ΡΠ±Π°Π²ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ·ΠΈ, Π² ΠΊΠΎΠΈΡΠΎ ΠΊΠ°Π·Π°Ρ
, ΡΠ΅ ΡΡΠΌ Π΄ΠΎΡΡΠ» ΡΠ°ΠΌΠΎ Π΄Π° ΡΠΈ ΠΈΠ³ΡΠ°Ρ Ρ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΡΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠ΄Π½ΠΎ ΠΎΡ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ°ΡΠ° Π±Π΅ΡΠ΅ ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½ΠΎ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ°ΠΌΠ°ΡΠ° ΡΡ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. ΠΠΌΠ° ΡΠΈΠ»Π½ΠΎ ΡΡΠ²ΡΡΠ²ΠΎ, ΡΠ΅ ΡΡ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ Π½Π° Π₯Π°Π±ΡΠ΅. ΠΠ½ΠΎΠ³ΠΎ ΡΠ΅ Π½Π°Π΄ΡΠ²Π°ΠΌ ΠΠΊΡΠ°Π½Π° Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΡΡΡΠ° ΠΌΠΈ. π
*ΠΌΠ°Ρ
Π²Π° Ρ Π»Π°ΠΏΠ° ΠΈ ΠΊΠ°Π·Π²Π° Π·Π΄ΡΠ°Π²Π΅ΠΉ
ΠΠ°Π»ΠΊΠΎ Π·Π° Π΅ΡΠΈΡΠ½Π°ΡΠ° ΡΡΡΠ°Π½Π° Π½Π° Π²ΡΠΏΡΠΎΡΠ°
Π§Π΅ΡΡΠ½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ ΠΌΠΈ Ρ Π°ΡΠ΅ΡΠ²Π° ΠΈΠ΄Π΅ΡΡΠ° Π·Π° ΡΠΎΠ±ΠΎΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΡΠΆΠ΅ ΠΈ ΠΌΠΎΠΌΠΈΡΠ΅ΡΠ°. ΠΠΌΠ° Π½Π΅ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π² ΡΠΎΠ²Π° Π΄Π° ΠΌΠ΅ΡΠ½Π΅Ρ ΡΠΊΠ΅ΡΠΎ ΡΠΈ Π²ΡΡΡ Ρ ΡΠ°ΠΌΠ΅Π½Π΅ΡΠ΅ Π½Π° Π·Π°ΠΌΡΡΠ·Π½Π°Π» Π½Π΅ΠΏΠΎΠ·Π½Π°Ρ, ΠΊΠΎΠΉΡΠΎ ΡΡΠΎΠΈ ΡΠ°ΠΌ. ΠΠ»ΠΈ ΡΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅ΡΠ΅ Π΄ΠΎ ΠΊΡΠ°ΡΠΈΠ²ΠΎ ΠΌΠΎΠΌΠΈΡΠ΅ Π² Π»ΡΡΠ½ΠΎ ΠΊΠ°ΡΠ΅Π½Π΅ ΠΈ ΠΏΠΈΠΉΡΠ΅ ΠΊΠ°ΡΠ΅ Π·Π°Π΅Π΄Π½ΠΎ. ΠΠ·Π»Π΅Π·ΡΠ΅ Π·Π°Π΄ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΡΠ΅.
ΠΠΊΠΎΠ»ΠΎ Π»ΡΡΠΎΡΠΎ. ΠΡΠ΅ΠΌΠ΅ Π΅ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ΡΠ΅.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com