Cara menulis dan menempatkan di situs photobank untuk> 100.000 lukisan

Katakanlah Anda memiliki> 100.000 gambar yang perlu disortir dan mudah diletakkan di web untuk dilihat massal. Ini bisa berupa apa saja - galeri semua karya seni yang dibuat oleh umat manusia (dalam tugas yang saya lakukan), atau arsip foto bersejarah kota Moskow, atau gambar diam dari film, atau arsip umum foto dari liburan dari agen perjalanan utama, atau situs web untuk ilustrasi dan foto-foto stok, atau arsip gambar untuk media besar selama bertahun-tahun - di mana perlu untuk menertibkan, mengatur navigasi dan akses bagi karyawan dari jaringan internal.



Saya akan memberi tahu Anda bagaimana disarankan untuk memprogramnya.



Kata kunci dan warisannya



Pendekatan modern yang digunakan oleh semua bank foto dan galeri adalah menyediakan ilustrasi dengan serangkaian tag (kata kunci). Saya mengembangkan pendekatan ini dalam dua arah: (1) tag dapat diwarisi (pengguna sedang mencari buah beri - ia menemukan gambar dengan tag "cherry"), dan (2) tag dapat dilampirkan pada level bukan ilustrasi tunggal, tetapi katalog.



Kelemahan dari pendekatan pemberian tag ini adalah Anda mencari berdasarkan kata kunci, mengabaikan plot gambar. Naga yang dibunuh oleh gadis itu dan naga yang membunuh gadis itu adalah dua plot yang berbeda, tetapi sama untuk daftar kata: Naga, Gadis, Kematian, dan Pemenang (jika ada pertempuran). Pendekatan berbasis kata kunci tidak akan memungkinkan pengambilan sampel untuk kueri "Naga Mati" yang tidak termasuk gambar naga mengalahkan musuh yang terbunuh.



Tag utama adalah tag yang dapat dilihat oleh pengguna dalam direktori alfabet. Tag tambahan adalah tag yang tersedia untuk pengguna hanya dengan memasukkan nama tag ini secara manual dalam teks string pencarian. Saya mempertimbangkan jumlah tag optimal: main = 1/75, tambahan = 1/195, dari jumlah gambar.



Tentukan bentuk jamak (pengendara, pegunungan, dll.) Dari tag dalam nama file sebagai <tag name>! (mis. tanda seru). Anda akan membutuhkan kamus tentang bagaimana tag dapat disebut - jamak, feminin / maskulin, kata-kata sinonim, salah eja.



Simpan kamus tag dalam 4 file: Marks.csv - tag utama, Other.csv - tag tambahan, Wrong.csv - ejaan yang salah, sinonim, nama tag jamak, Artists.csv - penulis. Dalam file Marks.csv dan Other.csv, setelah pengidentifikasi tag dan nama utama dalam bahasa Rusia, tag induk dicantumkan (yaitu pewarisan) .



Marks.csv



Arwen; ( );Person,Girl,Elf,LordOfTheRings
ThorinOakenshield; ;Person,Male,Beard,LordOfTheRings


Ditulis di sini bahwa Arwen adalah seorang persona, seorang gadis, peri, karakter dalam The Lord of the Rings; Thorin Oakenshield - seseorang, seorang pria, mengenakan janggut, karakter Lord of the Rings. Dengan demikian, ketika pengguna mencari "The Lord of the Rings", semua gambar Arwen dan Thorin akan ditemukan. Saat mencari "jenggot" - di antaranya, akan ada Thorin. Saat Anda mencari "Thorin", itu juga akan ditemukan, karena ejaan yang disingkat ini ada di Wrong.csv.



Struktur folder



Jika kita overlay sampel "show girls" atau "show the sun" pada 100.000 gambar, jumlah hasilnya akan terlalu besar. Tetapi ini tidak akan terjadi jika gambar dipecah menjadi beberapa folder. Misalnya, di direktori root ada folder Dragons, di dalamnya ada folder Yellow, di dalamnya ada folder Girls (mis. Gambar dengan cewek), dan di dalamnya (di seluruh subfolder) ada 200 gambar. Dalam hal ini, bukan 200 gambar ini akan muncul di hasil pencarian, tetapi folder yang berisi itu. Lebih baik bagi pengguna juga.



Di sini, bagaimanapun, ada masalah ikatan yang terkait erat. Raja hampir selalu mengenakan mahkota dalam gambar, tetapi tidak dalam semua kasus. Katakanlah ada folder bernama Kings, dan ini berisi 3.000 gambar, di antaranya 2.500 di mahkota. Di sini, sehubungan dengan mahkota - pendekatan sederhana untuk menunjukkan folder tidak berfungsi.



Saya pikir jumlah optimal folder = 1/28 dari jumlah gambar



Seperti yang Anda pahami, jika file sudah ada di folder Dragons / Yellow / Girls, maka Anda tidak perlu menambahkan tag ini ke nama file, tambahkan hanya pengidentifikasi tag yang tidak mengikuti nama file dari lokasi penyimpanannya.







Multilingual, ikon, teks, subfolder virtual



File _.jpg dengan ukuran 200 (lebar) * 280 (tinggi) dibuat di dalam setiap folder - ini adalah ikon folder saat melihatnya (teks ditampilkan di atasnya), baik ketika pengguna berada di folder induk, dan ketika pengguna menelusuri hasil pencarian (jika ditemukan folder ini). Ikon kata kunci memiliki resolusi yang sama.



Juga, dalam banyak folder file _.txt dibuat, terdiri dari baris-baris berikut:



Artefact \ _. Txt (fragmen)



=Mielofon
=Mjolnir
=Palantir
 =ThanosGlove
=Glass-Potion
by-DavisonCarvalho=*
TheWitcher/Wolf-Head-Logo| 
DisneyPrincess/Moana/HeartOfTeFiti|  
SuperHeroes/Hellraiser/HellraiserBox| 
-m|Artefact


Di sini kita melihat jenis-jenis catatan:



  1. Labu = Ramuan Kaca - alias untuk subfolder. Dalam ilustrasi di atas, kita melihat bahwa nama samaran untuk folder Jepang tidak direkam, dan ketika melihat folder itu, itu tidak diterjemahkan ke dalam bahasa Rusia. Dua tag - Kaca dan Ramuan (Kaca dan Ramuan) - diterjemahkan dalam satu kata.
  2. by-DavisonCarvalho = * - tidak perlu alias
  3. SuperHeroes / Hellraiser / HellraiserBox | Lemarshan's Box adalah subfolder virtual. Subfolder di direktori lain juga akan ditampilkan di sini dengan nama yang diberikan.
  4. -m | Artefact - folder tersebut mewakili tag Artifact. Jika teks dilampirkan pada tag ini, itu akan ditulis di bawah ilustrasi.


Ukuran pada disk



Sekarang 111'000 gambar menempati ruang disk 65GB. Dan ini terlepas dari kenyataan bahwa dalam banyak kasus perlu untuk membuat format png yang lebih berat dari mereka:



  • ( ), paint-.
  • - , .
  • .webp, .png, (, , ).
  • .png, .jpg, .gif. .


β€”



index.php - diluncurkan tanpa parameter, ini akan menampilkan folder root galeri, alfabet dan string pencarian. Dengan mengklik pada subfolder di folder root, itu masuk ke sana. Dengan mengklik huruf alfabet, ia pergi ke tag utama yang dimulai dengan huruf ini. Ketika Anda memasukkan teks ke dalam string pencarian, itu pergi ke tag yang diidentifikasi oleh teks ini.



i.php adalah alat untuk melihat satu gambar yang dipilih. Memungkinkan Anda menavigasi ke tag dari daftar yang cocok dengan gambar ini.

img - folder root dari galeri web

m - folder dengan thumbnail yang dibuat dari semua gambar. Thumbnail tingginya 200, lebar sebanding dengan gambar. Struktur folder m mengikuti struktur folder img. Folder m dibuat secara terprogram sebelum mengunggah setiap versi galeri.

Tag - untuk setiap kata kunci, berisi file dengan hasil pencariannya di direktori.

Tanda - jenis file:



  1. Untuk setiap kata kunci, berisi file thumbnail-nya
  2. Untuk sebagian besar kata kunci, berisi file dengan deskripsi tekstual atau cerita tematis, anekdot
  3. Untuk beberapa kata kunci, berisi satu atau lebih cerita bertema html-teks
  4. Juga, folder ini berisi file-file seperti <kode huruf> .txt - daftar kata kunci yang diurutkan berdasarkan abjad untuk setiap huruf dari abjad Rusia.


Prosedur untuk mengunggah versi baru galeri ke situs



Program yang ditulis khusus (menggunakan perpustakaan Delphi dan Graphics32) melakukan hal berikut:



  1. β€” , ( .. ), ( Wrong.csv), _.txt, , .
  2. . , : .jpg .png ..
  3. . . β€” , .
  4. .


Kemudian, folder galeri dan bahan-bahan ini diunggah ke server.



Mesin galeri web tidak menggunakan DBMS.



Hosting



Saya menggunakan hosting Avahost , ruang disk 100GB menghabiskan biaya 500 rubel per bulan. Seperti yang Anda lihat, dengan ukuran koleksi 65GB, + gambar kecil dan sebagainya, dan ukuran hosting 100GB, peningkatannya tidak pernah mulus. Tidak ada cukup ruang untuk membongkar versi yang sama sekali baru dan kemudian beralih ke versi yang mulus, ada interval waktu penghentian situs yang tak terhindarkan selama beberapa jam. Saya sekarang melakukan pembaruan sebulan sekali.



File dikirim ke hosting dalam bentuk arsip. Sistem cPanel yang saat ini digunakan pada semua sistem hosting hanya dapat membongkar arsip zip. Dianjurkan untuk menggunakan file dengan panjang hingga 2.5GB, jika tidak setelah mengunggah file ke folder melalui antarmuka web cPanel selesai, bilah progres pengunggahan (warna awal adalah biru) dapat berubah menjadi merah alih-alih hijau. Apa bedanya, saya tidak mengerti (sepertinya file itu diunggah secara normal bahkan dalam kasus ini), tetapi dalam hal ini saya unggah ulang. Untuk beberapa folder, ini menghasilkan folder yang harus dipecah menjadi beberapa arsip zip terpisah.



Sebelumnya saya mencoba membuat hosting di rumah, membeli netbook bekas di Avito seharga 2.000 rubel. Atur, semuanya bekerja. Beberapa hari berlalu - tidak berfungsi. Saya reboot - tidak ada gunanya. Kemudian, itu berhasil lagi, kemudian lagi tidak. Saya mengubah netbook (saya membeli yang lain, yang lebih kuat, juga di Avito, seharga 3000 rubel) dan mulai menggunakan perangkat lunak lain - hal yang sama. Saya mengubah tiga penyedia (Seven Sky> Akado> MGTS) - hal yang sama. Singkatnya, peralatan yang berdiri di penyedia tampaknya memotong hosting di rumah, dan penyedia sendiri tidak tahu tentang itu. Atau apa alasan lainnya. Pergi ke hosters, jangan hosting di rumah. Hosting Indie menyebalkan. Bahkan router primitif untuk interaksi game jaringan lebih baik untuk menumpuk di php dan memakai hosting daripada tetap di rumah atau di kantor, dan menunggu sesuatu untuk istirahat tanpa alasan yang masuk akal.



Catatan untuk nyonya rumah (tentang hosting)



Selain karakteristik-techno (yang hanya satu yang benar-benar diperlukan - jumlah gigabytes, yang lainnya adalah angka untuk semua orang pada skala mereka sendiri, saya sampai pada kesimpulan bahwa karakteristik lebih baik untuk avachost), ada parameter seperti itu - penyalahgunaan-resistensi. "Pelanggaran" adalah keluhan. Selain itu, alasan pengaduan mungkin muncul tiba-tiba, misalnya, di studio Artemy Lebedev . Oleh karena itu, hosting normal memiliki parameter tahan peluru, tahan terhadap keluhan. (Jangan bingung dengan hosting khusus, di mana Anda dapat meng-host apa saja, meskipun halaman phishing dari Sberbank dengan undangan untuk memasukkan akun pribadi Anda - ini adalah kantor yang terpisah, saya tidak memahaminya).



Monetisasi



Katakanlah Anda adalah outlet media utama, dan Anda memutuskan untuk membuat sebagian besar foto Anda (terakumulasi selama beberapa dekade) menjadi publik. Misalnya, menggunakan teknologi yang dijelaskan di atas. Bagaimana Anda bisa menghasilkan uang dari ini (kecuali untuk branding dengan membubuhkan tanda air pada foto, serta menjualnya)? Nah, jika Anda adalah media maka Anda tahu, saya akan memberitahu Anda untuk sisanya.



Sebagian besar skema monetisasi memberi Anda 10 kopeck dari rata-rata pengunjung situs per hari (termasuk mereka yang mengunjungi situs satu kali dan yang mengunjungi beberapa kali sehari). Demikian pula, itu memberi penulis situs dan YAN (Yandex Advertising Network). Untuk menghasilkan lebih banyak, Anda harus melibatkan orang-orang dalam sekte agama atau menjual jimat ajaib, saya tidak melakukan itu. Agregator iklan semacam itu mudah ditemukan di Internet, mereka membayar untuk mencapai hasil (seseorang membeli penyedot debu Kirby atau menjadi anggota sekte). Selain itu, ini memalukan: Saya tidak melakukan ini, tetapi Yandex setiap saat dan kemudian mendorong sesuatu seperti ini melalui situs saya. Akibatnya, orang terkadang masih menjual omong kosong dengan harga tinggi (melalui Yandex), tetapi saya mendapatkan 6 hingga 10 kali lebih sedikit dari ini.



Banyak orang yang saya kenal memiliki blok iklan atau sesuatu seperti itu secara default dan iklan Yandex tidak terlihat. Dan mereka sendiri tidak mengatakannya. Kenapa begitu - saya tidak tahu.



Yandex memungkinkan Anda untuk menarik jumlah setelah mencapai 3000 rubel.



Juga, pemilik situs dapat mendaftar di miralinks.ru dan memposting artikel. Alamat artikel dan tautannya harus diposting selamanya, mis. pastikan penempatannya tidak terlalu beracun. Artikel baru diperbolehkan untuk menggantikan yang sebelumnya di halaman sejarah selanjutnya.



Anda dapat menjual penempatan spanduk, dan jika tidak sesuai dengan arti sumber daya.



Di mana saya bisa melihat teknologi ini beraksi (proyek apa yang saya lakukan)?



Saya membuat situs corchaosis.ru - semacam analog wiki untuk grafik.



Mengapa belum memungkinkan untuk mempromosikannya (seperti yang saya pikirkan):



- Orang hanya perlu sarana untuk mencapai prestasi.



Bahkan jika orang pergi ke galeri seni untuk melihat lukisan, mereka masih peduli dengan pencapaian materi. Saya mengunjungi Galeri Tretyakov. Saya melihat Swan Lake.



Jika sumber daya web tidak membawa seseorang lebih dekat ke pencapaian materi, maka mereka tidak akan melakukannya.

Orang sendiri mungkin berpikir sebaliknya, bahwa mereka suka lukisan. Tidak masalah. Jika kita melakukan sesuatu terhadap orang, kita harus "lebih sulit" daripada orang. Memahami dan lebih menyadari. Jika rubah makan ayam dan tikus, maka rubah harus lebih sempurna daripada ayam. Dari tingkat representasi ayam, hasil rubah tidak dapat dicapai.



- Orang butuh interaktif.



WEB 1.0 sudah mati.



Jika Anda tidak dapat menawarkan interaktivitas, maka tidak ada yang membutuhkan Anda.



Anda tidak diawasi. Ini tentang mendapatkan hasil lagi. Kobvoy tidak pergi ke hutan untuk pariwisata, ia pergi ke hutan untuk memulai peternakannya sendiri. Sementara situs tidak memiliki alat untuk membuat peternakan mereka sendiri (portofolio, dll.), Para koboi tidak tertarik pada hutan.



Di mana mendapatkan mesin siap pakai



Pada prinsipnya, saya telah menggambarkan semua yang perlu Anda lakukan untuk melakukannya. Anda bisa menulis kepada saya.



File exe lokal ditulis dalam Delphi + Graphics32, sisi server adalah dua file .php.



All Articles