» »

Iskalnik produktov po spletnih trgovinah

Iskalnik produktov po spletnih trgovinah

HotBurek ::

Dobro jutro.


Evo, nov večer, nov post. A tokrat na temo iskalnika.

Zadnjih nekja (mnogo) dni sem razvija iskalnik, ki omogoča iskanje produktov iz spletnih trgovinah in danes sem pripeljal razvoj do konca prvega write-a, prve verzije oz. prvega MVP.


Link: https://www.keyword.si/


1 TRENUTNO STANJE

Kot že rečeno, gre za prvo verzijo.

To pomeni:
- Da se lahko pojavijo napake (konkretno pri cenah in valuti)
- Da je iskanje "omejeno" na številke in črke večine abeced evropskih držav (manjka grška), ter da je iskalni niz omejen na string minimalne dolžine 3 ("cd" ne dela, dela pa "dvd").


2 VSEBINA PODATKOVNE BAZE

Trenutno je v bazi 388.315 produktov iz 300 spletnih trgovin. Večinoma sem dodajal trgovine s prehrano iz tujine, trgovin z oblekami in tehnično robo je zelo malo.


3 FUNKCIJE VMESNIKA

Input element ima autocomplete. String do dolžine vključno 3 je v cache-u (file na disku), ostalo se izvede search v tabelo z nekje 10M vrsticami. Response time je glede na teste nekje v rangu 250ms.

V kolikor za input obstaja autocomplete, se bo ta prikazal z največ 11 elementi.

Obstajajo tudi 3 bližnjice za tipke:

- Tipka ESC, v kolikor je prikazan autocomplete, le tega izbriše.
- Tipka S, v kolikor je fokus izven Input elementa, naredi scroll up, ter da focus na Input element.
- Tipka H, v kolikor je fokus izven Input elementa, naredi redirect na home page.

Element v autocomplete je možno zbrati tudi s tipko UP oz. DOWN.


4 SPLETNI VMESNIK

HTML vmesnik je narejen v preverjeni tehnologiji. Se pravi HTML Table.

CSS je v večini Inline, nekaj malega v head-erju (za hover in podobno).

JS je v celoti Inline, čisto na koncu, a znotrak BODY elementa.

Za vsak rezultat sta dva linka:

- Prvi link, ki je desno od ikone, odpre nov tab ter gre na stran, kjer je najdeni produkt.
- Drugi ja "na" sliki (96x96), ki prav tako odpre not tab, in gre na link od izvorne slike.

Spletna stran ne nastavi nobenega fonta, kar pomeni, da je uporabljen privzet font brskalnika. Dolgo časa sem poizkušal z fontom Quicksand, a ni bil isti kot tist na desktopu (čeprav sem ga od tam skopira), in sem na koncu pustil brez.


5 TESTIRANJE

Spletni vmesnik sem testiral (izris, autocomplete oz. JS) na Debian+Firefox, ter Windows+IE11. Ostalo ne.

Tu me zanima, kako dela (če sploh), na drugih brskalnikih in napravah. To, da ni response, pa vem.


6 SEARCH

Iskanje trenutno poteka "direkt" in v "živo", kar pomeni, da response time lahko traja nekaj sekund.


7 PLAN ZA NAPREJ

Za naslednjo verzijo imam v planu, da pohitrim zbiranje podatkov. Trenutno le-to poteka dokaj po konjsko. To želim pohitrit na način, da bom imel en process peer shop, in da v bazo čim hitreje shranim skupno 1M produktov.


8 ZAHVALA

Zahvalil bi se vsim in vsakemu, ki mi je kakor koli pomagal pri reševanju, hja, večinoma SQL problemov.


9 SODELOVANJE

Well, če ste tule kakšni "ta pravi" SEO-ti. Pri zbiranju podatkov sem naletel na veliko strani, ki nimajo urejenih osnov.

Konkretno:
- robots.txt: ali fali ali nima pointerja na sitemap ali je ta napačen
- sitemap.xml: ali ga ni ali ima pokvarjeno strukturo ali pa nima pointerjev na produkte
- pages: nimajo product sheme ali je ta pomankljiva ali pa ima netočne podatke

Ker sem do sedaj dodajal večinoma tuje spletne srani, mogoče to ne pride toliko v poštev za našo domačo sceno. A vseeo, če imate SEO veze v italiji, španiji, franciji, nemčiji, poljske, itn... tam je dosti za pofixat. Vsaj 1/3 spletnih trgovin imam vsaj en feler. In seznam teh trgovin lahko pripravim.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zimonem ::

Probal za dezinfekcijsko bariero pa ne najde nič.

MH0 ::

Razmisli o jezikovno neodvisnem iskanju.

Ahim ::

Zimonem je izjavil:

Probal za dezinfekcijsko bariero pa ne najde nič.

Moral bi iskat bio jogurt 8-O

HotBurek ::

MH0, a to misliš, da bi za iskalni niz "med" iskalnik vračal tudi rezultate "miele"?
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

hbgqzR ::

Če bo kdaj kaj iz tega, ne pozabi na price arhive in alerte.

Netrunner ::

HotBurek je izjavil:


HTML vmesnik je narejen v preverjeni tehnologiji. Se pravi HTML Table.

Zaradi tega stavka sem kar končal brati :), ko pridem k sebi bom mogoče preveril še kaj več. Preverjenih tehnologij je veliko več kot tabela katera se je uporabljala 10+ let nazaj. Si malo za časom :)

Sicer tabele se še vedno uporabjajo, vendar za tisto za kar so namenjene.
Doing nothing is very hard to do... you never know when you're finished.

kuall ::

html tabele so ok, če so dovolj ozke, da se vidi vse na telefonih.
iskalnik zgleda ok, je pa edino občutek, da si ga pacal zeeeeelo dolgo. čaka te še veliko dela, da bo stran primerljiva s ceneje.si npr ali mimovrste, ponujanje kategorij pri hitrem iskanju je tudi zelo uporabno.
ok če se učiš naj ti bo, v službi si ne moreš privoščiti takole počasi pacati, ker ne bo para.

MH0 ::

HotBurek je izjavil:

MH0, a to misliš, da bi za iskalni niz "med" iskalnik vračal tudi rezultate "miele"?

Ja, da bo puding našel tudi pudding, ker če ne, je brezveze.

LukiYo ::

Upam, da ne izumljaš svojega searcha (v kakem sql-u), ampak uporabljaš kak library ali engine, kot je Lucene (uteži, sinonimi, kategorije, indeksiranje, itd)...

LukiYo ::

Mal spominja na html 1996, razen če je to dizajn strategija. Tabele ne bi smel uporabit, saj ni responsive (ali bo delalo samo za ekrane večje 1000px, kot si nastavil?), pa fonte moraš imet, najbolje kar dat enmu html/css-jevcu (niso dragi, zgledal bo boljše, source bolj profesionalen videt).

Spura ::

LukiYo je izjavil:

Upam, da ne izumljaš svojega searcha (v kakem sql-u), ampak uporabljaš kak library ali engine, kot je Lucene (uteži, sinonimi, kategorije, indeksiranje, itd)...
Nope, homemade "search" v SQLu.

kr?en ::

Faliral ze v zasnovi s homemade searchom.

Ze ce bi fulltext search feature od baze uporabil, bi bilo malo bolje.

TheBlueOne ::

Kjut retro izgled, samo tabele so pa res fail. Ce jih ze hoces naj ti nekdo naredi zadeve bolj profesionalno, in naredi tabele samo navidezno. Tiste slikice na prvi strani bi jaz spremenil v nekaj smiselnega in definitivno uporabil pixelart, da povdari retro naravo.

googleg1 ::

Ne razumem kateri problem resuje ta spletna stran ?

Ne vem ce sem prav razumel, ampak produkti se zgleda ne združujejo skupaj. Tako ne moraš za posamezni produkt ugotoviti kje je najcenejši ? Mogoče pa to sploh ni cilj ?

EDIT: Nisem vedel da to obstaja
 Milka Philadelphia

Milka Philadelphia

Zgodovina sprememb…

  • spremenil: googleg1 ()

HotBurek ::

Dobro jutro.


Evo, nov dan, in nova MVP verzija 2.0 iskalnika www.keyword.si


WEB INTERFACE

- Dodal sem font.
- HTML Table sem naštudiral do te mere, da sem z uporabo @media_query in !important zadevo spravil na dokaj good responsiv nivo. Vem, na meji legalnosti. Testirano na mobilnem telefonu in je dokaj solid.
- Med tem, ko server sestavlja skupaj rezultate, in se čaka na response, vmesnik prikazije animacijo (baguette in croissant).

SEARCH

- Sedaj prikazuje po max en rezultat za posamično trgovino, kar omogoča iskanje v "širino", tako, kot je bilo v samem začetku tudi zastavljeno.
- Možno je iskat tudi po inputu dolžine ena, ob predpostavki, da je vsaj en vnos dolžine dva (npr. "ab c")
- Za hitrejše iskanje sem uporabil Full-Text Index, končni ranking je potem še malo dodelan v Python-u.
- Trenutno je za slovenske trgovine nastavljen manjši "preffer"; znotraj iste rank grupe so vedno na prvem mestu.

AUTOCOMPLETE

- Sedaj prikaže rezultate, ki imajo na prvem mestu string dolžine vsaj dva (npr. "al limone")

DATABASE

- V bazi je skupno 6.066.700 produktov (kar je 3x več kot na ceneje si 8-)) iz 562 trgovin.
- Za prihodnjo verzijo načrtujem database redesign, specifično tabele, tako kot sem imel v prvi verziji. Sedaj imam vse v eni tabeli, in sta posledično SELECT in INSERT počasnejča (bolj obremenjujeta CPU)...
- V bazi so trgovine iz 51-ih držav:
country_code_3166|shop_count|product_count|
-----------------+----------+-------------+
alb              |         5|        22788|
are              |         1|         6803|
arg              |         1|         4151|
aus              |         2|         4858|
aut              |         6|        15392|
bel              |         3|         6932|
bih              |         1|         3057|
blr              |         2|         1480|
bra              |         5|         6572|
can              |         4|         5869|
che              |         8|        10711|
col              |         7|        61119|
cze              |        18|       163315|
deu              |        31|       224276|
dnk              |        11|       346185|
esp              |        26|       174607|
est              |         2|         1295|
fin              |         3|        48390|
fra              |        26|       195732|
gbr              |        32|       187799|
grc              |         6|        49125|
hrv              |         6|         5119|
hun              |        22|       319592|
ind              |         2|        35356|
irl              |         3|         7551|
isl              |         1|         1326|
ita              |        47|       657326|
ltu              |         1|        21226|
lva              |         2|          115|
mda              |         4|         8302|
mex              |         1|          207|
mys              |         2|        94039|
nld              |        16|       561495|
nor              |         4|        26893|
nzl              |         1|         2879|
phl              |         1|         1319|
pol              |        13|       577839|
prt              |        12|        97230|
rou              |         7|        60233|
rus              |         4|       285767|
sgp              |         1|          305|
srb              |         1|           30|
svk              |         8|       389214|
svn              |       160|       720505|
swe              |         4|         6773|
tur              |         2|         4581|
ukr              |         6|       137361|
usa              |        26|       190388|
uzb              |         1|        10810|
vnm              |         1|         3996|
xxk              |         1|       297368|

CACHE

- Rezultati (id-ji) za iskane nize dolžine 1, 2 in 3 so v cache tabeli, tako da dela iskanje bistveno hitreje, kot pred tem.

MVP 3.0

Želja je priti iz trenutnih 500 trgovin na 5.000 trgovin. To je pol že fajn lepa cifra.

Trenutno največji problem je premalo prostora na disku, ki je skoraj čisto zafilan (slike(56GB) + database(108GB) = 164GB):
/dev/sda2       195G  181G  4.4G  98% /

Mogoče bi z kompresijo (MariaDB) lahko prihranil nekaj prostora, a v trenutni situaciji je že najbolj enostavni backup prava telovadba.

Server z večjim diskom je prioriteta št.1

Poleg tega je v planu, da se v naslednji verziji naredi možnost izbire iskanja po trgovinah določene države (ali pa po celem svetu, kot je sedaj). Tu bo izziv kako z-build-at autocomplete za vsako od 51 držav posedej. Zna trajat dolgo časa.

Ter še nekaj manjših popravokv, večinoma na backend-u.

To je to zaenkart.

LINK: https://www.keyword.si
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

fikus_ ::

Fajn bi bil še filter, po katerih (več) državah išče.
Učite se iz preteklosti, živite v sedanjosti in razmišljajte o prihodnosti.

HotBurek ::

Dobro jutro.


Evo, fantje in dekline, po nekaj dneh premora je nastala nova verzija iskalnika.

Ta se nahaja na novi domeni: https://www.miamiprice.si/


Spletna stran ima sledeče funkcije:

ISKANJE - To išče po vseh izdelkih. Tisti izdelki, ki se nahajajo v skupini novo, ceneje ali dražje, so za obdobje zadnjih 14 dni.

Primer: https://www.miamiprice.si/search.html?s...



ZGODOVINA SPREMEMBE CENE - Izpis vseh cen; prvi vnos, vsaka sprememeba, ter zadnji vnos. Ter prvi in zadnji vnos, v koliokr sta različna. Do tega izpisa se pride z klikom na ceno (rumeno polje).

Primer: https://www.miamiprice.si/product.html?...



NOVO, CENEJE IN DRAŽJE - Izpis za vsako trgovino posebej. Za izpise z večjim številom produktov (več kot 100) je potrebno počakati nekaj sekund, da se vse skupaj zloži.

Primer: https://www.miamiprice.si/ncme.html?sho...



V bazi so trenutno štiri trgovine.

Do sedaj sem delal na back-end-u, od sedaj naprej pa bo več časa za dodajanje novih trgovin. Če ima kdo željo, katero trgovino še dodam, naj sporoči.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

Nebomgabiksa ::

Iz uporabniškega stališča:

1. alpsko mleko 3,5% išče alpsko mleko 3 5, kar je rahlo neuporabno (beri:preveč rezultatov). Tudi uporaba narekovajev "3,5%" ne pomaga...

2. Preračun cene na osnovne merske enote l, kg, kos... (in po možnosti sortiranje po tem) pa bi bilo že kičasto

3. Tuš C&C je bolj za pravne osebe (imaš tudi Mercator C&C). Boljša primerjava bi bil Tušev https://hitrinakup.com/

4. Katera je četrta trgovina?!

Tako na hitro

Jazon ::

a vrstni red vnosa ima kakšno vezo?

kičasto bi bilo, če bi glavne pojme npr. prvih 50 najdenih produktov filtriralo, da jih lahko naslednjem koraku pokljukaš in tako izboljšaš iskanje

npr. oljčno olje

Filter proizvajalcev: gea, zvezda,..
Filter količine: 1lt, 0.5lt, 0.7lt
Filter proizvodnje: deviško, extra deviško, mešano,
Filter kakovosti: bio, demeter, klasično

tikitoki ::

Filtri bi bilo dobrodosli, pa malenkos lepsi vmesnik.

Pa link do povratka nazaj, ce pritisnes na dolocen izdelek. Ce slucajno obstaja pa bolje oznacen.

HotBurek ::

Dobro jutro.

Evo, sedajle razmišljam o tem, katere funkcije bi bile zanimive (skoraj nišne), da bi bil iskalnik zanimiv in uporaben. Ker, če iskalnik najde subset od tistega, kar najde google, potem je uporabnost lahko vprašljiva.

Nek SUM želja iz tele teme so:
1 - zgodovina cen in alerti
2 - izdelki razvrščeni v kategorije
3 - da bi za iskanje "puding" dobil tudi rezultate "pudding" in podobne
4 - preračunavanje cene na enoto

Za zgornji seznam je tako:

1 - težko naredit nizek refreh rate za vse izdelke (rabil bi N serverjev), šlo pa bi za nekatere izbrane (nekaj sto)
2 - manual work...
3 - z typesearch se je to delno popravilo
4 - spet manual work...

Trenutno imam možnost iskanja po državah. In sedaj razmišljam, katera funkcijonalnost bi prišla (zelo) prav, pa da mogoče "drugi" tega nimajo, ali pa je bolj tko-tko?

Če imam kdo kak predlog, prosim, kar naj napiše.

root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

MH0 ::

Geizhals si pogledal? To lokaliziraj za SI.

FireSnake ::

Netrunner je izjavil:

HotBurek je izjavil:


HTML vmesnik je narejen v preverjeni tehnologiji. Se pravi HTML Table.

Zaradi tega stavka sem kar končal brati :), ko pridem k sebi bom mogoče preveril še kaj več. Preverjenih tehnologij je veliko več kot tabela katera se je uporabljala 10+ let nazaj. Si malo za časom :)

Sicer tabele se še vedno uporabjajo, vendar za tisto za kar so namenjene.


Bo držalo. Jaz pa pri inline CSSu.
Inline CSS potem pa pravi, da imajo drugi slab SEO ;((

Edit: gledam, da je bila obujena tema iz naftalina.

Še ena za nasmejati: rabil bi n serverjev.
Zakaj že?
Večnitnost zate še vedno ne obstaja?
Poglej in se nasmej: vicmaher.si

Zgodovina sprememb…

  • spremenilo: FireSnake ()

HotBurek ::

Pri večnitnosti sta dva problema:
- Poraba RAM-a (Kar pa je zanimiv izziv, ker mogoče obstaja kak tiny proxy (tiny po porabi RAM-a), katere bi lahko spawn-al in potem vsakemu dal v queue 1000 item-ov. Trenutni crawler požere preveč RAM-a in jih gre do ene 30~40 naenkrat. Ko sem poizkušal vzporedno rebuild-at autocomplete, pa je popapcal ves RAM in krešnal database.)
- Vprašanje, kako bi Shopify-jev intružn-detekšn-sistem odgovoril na "tisoče" requesto-v iz enega samega public IP-ja.

Skratka, z N serverjev (majhni VPS-i) bi dobil N različnih public IP-jev, s tem pa bi se že dalo kaj naredit.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

Rias Gremory ::


Skratka, z N serverjev (majhni VPS-i) bi dobil N različnih public IP-jev, s tem pa bi se že dalo kaj naredit.

Mogoče uporabljaš napačne stvari za reševanje problema?

CGPT sem vprašal (vprašanje je itak verjetno preveč široko, a verjetno je dober začetek):
how can i scale a custom made search aggregator?

odgovor:
Scaling a custom-made search aggregator involves optimizing its performance, handling increased traffic, and ensuring the system can accommodate growth. Here are some general steps you can consider:

1. **Optimize Search Algorithm:**
- Ensure that your search algorithm is efficient and can handle a large number of queries.
- Optimize database queries and indexing to speed up search results retrieval.

2. **Caching:**
- Implement caching mechanisms to store frequently accessed search results.
- Use a distributed caching system to ensure that the load is distributed across multiple servers.

3. **Load Balancing:**
- Implement load balancing to distribute incoming search requests across multiple servers. This helps prevent any single server from being overwhelmed with traffic.
- Consider using a load balancing solution or service that can dynamically adjust to changes in traffic.

4. **Horizontal Scaling:**
- Consider a horizontal scaling approach by adding more servers to your infrastructure. This can be achieved through containerization (using tools like Docker) or virtualization.
- Distribute the search workload across multiple servers to improve performance and handle more requests simultaneously.

5. **Database Optimization:**
- Optimize database performance by indexing, partitioning tables, and using the appropriate database engine.
- Consider using a database sharding strategy to distribute data across multiple databases.

6. **Asynchronous Processing:**
- Offload time-consuming tasks to background processes or a message queue system. This ensures that the search aggregator can quickly respond to user requests.

7. **Content Delivery Network (CDN):**
- Implement a CDN to cache and deliver static assets (like images, stylesheets, and scripts) closer to end-users, reducing server load and improving latency.

8. **Monitoring and Logging:**
- Implement comprehensive monitoring and logging to identify performance bottlenecks and potential issues.
- Use tools for real-time monitoring, logging, and analytics to gain insights into system behavior.

9. **Scalable Infrastructure:**
- Consider using cloud services that provide auto-scaling capabilities based on traffic demand.
- Design your infrastructure to be modular and easily scalable. This includes services like load balancers, compute instances, and database clusters.

10. **Security Measures:**
- Implement security best practices to protect your system from potential threats as it scales.
- Regularly update and patch software to address vulnerabilities.

11. **Documentation:**
- Document your system architecture and scaling strategies to facilitate future maintenance and improvements.

Remember to test any scaling changes in a controlled environment before deploying them to production, and monitor the system closely during and after scaling to identify and address any issues that may arise.
Mirno gledamo, kako naš svet propada,
saj za časa našega življenja ne bo popolnoma propadel.

Zgodovina sprememb…

HotBurek ::

Tale Čat gpt se bo začel brat kot nek marketinški dokument. :))

To, kar si vprašal in dobil dogovor, je za traffic, ki pride not na "moj" server. Kot rečeno, z typesense sem zadevo rešil in danes do sedaj je google naredil 81.542 search request-ov. Ko gledam log file z tail -f, je to po več request-ov na sekundo, response time pa je v rangu 0.0x sekunde, kar je top of the top of the top. Skratka, to laufa na polno in ni (več) problem.

Delat po več N requestov iz istega pulic IP-ja na nek shopify, brez 400 neki respons-ov, je pa druga zgodba.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

Ales ::

Rias Gremory je izjavil:


Skratka, z N serverjev (majhni VPS-i) bi dobil N različnih public IP-jev, s tem pa bi se že dalo kaj naredit.

Mogoče uporabljaš napačne stvari za reševanje problema?

CGPT sem vprašal (vprašanje je itak verjetno preveč široko, a verjetno je dober začetek):
how can i scale a custom made search aggregator?

odgovor: ...

Pa ti uporabljaš prave?

Dve stvari bi bile super, da bi se jih ljudje zavedali, preden spamajo forum s temi debilizmi:

- tile GPT-ji niso statistični modeli znanja, temveč jezika
- če že mislijo, da so od GPT nekaj "izvedeli", naj naredijo povzetek in izluščijo bistvo, ne pa da pastajo gore takega praznega tekstovnega dreka na forum.

Ahim ::

Ales je izjavil:

Rias Gremory je izjavil:


Skratka, z N serverjev (majhni VPS-i) bi dobil N različnih public IP-jev, s tem pa bi se že dalo kaj naredit.

Mogoče uporabljaš napačne stvari za reševanje problema?

CGPT sem vprašal (vprašanje je itak verjetno preveč široko, a verjetno je dober začetek):
how can i scale a custom made search aggregator?

odgovor: ...

Pa ti uporabljaš prave?

Dve stvari bi bile super, da bi se jih ljudje zavedali, preden spamajo forum s temi debilizmi:

- tile GPT-ji niso statistični modeli znanja, temveč jezika
- če že mislijo, da so od GPT nekaj "izvedeli", naj naredijo povzetek in izluščijo bistvo, ne pa da pastajo gore takega praznega tekstovnega dreka na forum.

Dokler bodo ChatGPTji stresali take bucke, ni nevarnosti da bi pevzeli delo niti tistim, ki WP klikajo, kaj sele komu drugemu. Copywriterjem mogoce ...

HotBurek ::

Dobro jutro.

Evo fantje in dekline, nov dan, nov projekt.

Tokrat sem naredil mini spremljalnik/primerjalnik cen izdelkov v trgovinah SPAR, Mercator in Tuš. Tretnutno za test zgolj bučno, oljčno in sončnično olje.

Server zgenerirat html fajle, ki imajo poleg osnovne "kategorije" še nekaj podkategorij, kar je razvidno iz imena fajla.

Izdelki so razvrščeni po ceni na količino, naraščajoče.

Prav tako za izdelek v akciji to prikaže.

Za prikaz sem uporabil tehnologijo "html table", kolikor sem testiral, bi se moral izpis lepo prikazat tudi na mobilnih telefonih.

Trenutno še nimam domene, zato je dostop kar preko IP-ja in HTTP-ja.

Povezava: http://5.189.147.8/category/
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

HotBurek ::

Dobro jutro.

Evo, zadevo sem prestavil na domeno.

https://www.bbsc.si/

Dodane so še akcije po trgovinah (za Tuš treutni ni akcije za izdelke, ki so v bazi.)

Zanima me, ali tak prikaz izdelkov in cen komu pride prav?

Da vem, če je smiselno nadaljenav.

Ali pa bi kakšno stvar moral spremenit?
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

MH0 ::

Poveži še s tistim vladnim popisom cen. :-)

RockyS ::

Meni je super!

P.S. sam uporabljam za nakupovalni listek Google Keep, da lahko šeramo v družini, kaj pa drugi uporabljate?

HotBurek ::

Dobro jutro.

Evo, fantje in dekline, nov dan, nov projekt.

No, sem mislil, da mi bo danes uspelo narediti search funkcijo, a mi jo ni. Jutri, pojutrišnem pa bi moralo biti tip/tip, in ready za na public.

Zato danes šeramo samo sliko.

root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()

HotBurek ::

Evo, še kar sem pri grupiranju/urejanju podatkov.

Imam idejo, kako bom naredil search funkcijo, pa tudi autocomplete, a še nisem tam. Mislim pa, da ne bo trajalo dolgo.

Tole sem pa danes videl, ko sem urejal podatke.

root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

FireSnake ::

Super, da to deliš z nami.

Kaj vidimo na sliki?
Poglej in se nasmej: vicmaher.si

ReRMh ::

verjetno, da se ta aeg lfr* pralni stroj splača kupiti v prvih 3 od 17 trgovin
meni pa je kar všečna reč ampak stvar še ni dosegljiva.

za stolpec € in % dodal vsaj +, da bi bilo "+€" in "+%", če ne že "€ dražje", "% dražje" nekaj takega

fikus_ ::

Modro, ali so linki do trgovine, ali do produkta?
Učite se iz preteklosti, živite v sedanjosti in razmišljajte o prihodnosti.

HotBurek ::

Bom dodal še plus.

Linki so do trgovin, direktno kjer je ta produkt.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

HotBurek ::

Evo, zadva je redi.

Notri so samo pralni stroji (~640).

Pri rezultatih iskanja je na koncu linka v oklepajih napisana cifra koliko različnih cen (in trgovin) je najdenih za posamičen izdelek. Je kar nekaj takih, kjer je izdelek na voljo samo v eni trgovini (v nekaterih trgovinah sicer je, a ni dobavljiv/ni v zalogi itn.)

Vse kode pralnih strojev so napisane brez presledkov, pomišljajev ali poševnic. Search vedno ne najde izdelka, če je koda napisana s presledkom. Npr: "rcss 148" ne najde, "rcss148" pa najde.

Autocomplet je in dela, tako da je lahko v pomoč pri pisanju teh kod.

Link: https://www.pralnistroj.si/
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Matija82 ::

Definitvno se vidim da uporabim to ko bom kupoval naslednji pralni stroj. Proper iskalnik, ne pa marketinško načičkan ceneje.si

Par dobronamernih komentarjev.

- "Najbolj popolen" -> "Najbolj popoln", raje v bistvu napiši "najboljši" če že želiš pridevnik. Imaš pa tudi sušilne stroje tako da lahko vljučiš tudi to.
- spremeni to grozno kombinacijo barve in odstrani ime povezave ("www.pralnistroj,si"), ni to 1994 da ne ljudje ne vedo kaj je naslov spletne strani :) Je pa fajn imet nek "home" button.
- rubrike EUR in % so malo nejasne, kjer imaš samo en produkt ampak ne vem če je smotrno da imaš pri samo enem zadetku samo rubriko "Cena", ker se pač ponudba posodablja
- dodaj malo statistike (koliko štacun, koliko modelov, koliko znamk, kdaj je bil update)
- glede na to, da ti gre kurzor direkt v search filed ne rabiš "Vnos:"
- kaj se zgodi, če je recimo 15 strani rezultatov, recimo za "Bosch"? A prikaže vse cifre 1-15? Gredo vse cifre v tisti prostor spodaj?
- idealno bi rad videl še trend najnižjih cen za posameznih izdelek čez neko časovno obdobje (1/3/6/12m) ala geizhals

Zgodovina sprememb…

  • spremenilo: Matija82 ()

HotBurek ::

Kul, hvala za komentraje.

Evo, glede "popolnosti". Sedaj, ko vidim, da se piše "popolen" brez "e", sem se odločil, da "e" ostane, a sem ga označil. Ker, pač iskalnik (še) ni popln, in "e" nekako to sporoča. :))

Kar se tiče sušilnih strojve (ter pralno sušilnih). Sprva sem jih na ene par straneh "pobral", kategoriziral in "disejblal". Kasneje sem se odločil, da jih "enejblam" (tako so vidni v autocompletei in v iskalnih rezultatih). To sem naredil zato, ker google tako počasi crawl-a, da preden bo "obisk" prišel preko googla, jih bom že dodal in kategoriziral.

In ravno to sedaj počnem. Popravljam crawlerje in zajemam tudi pralne ter pralno sušilne stroje. Ko to končam, jih bom kategoriziral. To traja, ker so pri nekaterih strojih kode "smotane", pa ne želim imeti veliko napak.

En dan nazaj sem nastavil, da iskalnik išče striktno in ne popravlja "cadny napak". Ker sem imel nekaj primerov, ko sem primerjal npr. s ceneje.si; tam je bil pralni stroj, tu pri meni pa ne. In sem na koncu ugotovil, da ne gre za isti izdelek, ker je bil za "wdu8h544eu" najden "wdu8h542eu".

Spremenil sem, da za izdelek, kjer je najdena samo v eni trgovini, ne izpišem dodatnih dveh stolpcev z razliko (evro, procenti). Ter zraven dodal napis, da je bil ta izdelek najden samo v eni trgovini.

Glede osnovne statisteke bom dodal na domači strnai števili strojev po skupinah (pralni, pralno sušilni, sušilni), ter mogoče število izdelkov grupirano po blagovnih imenih. Ter, število vseh trgovin (trenutno 48), pa število vseh izdelkov.

"Vnos" ostaja, da je lepo simetrija z gumbom na durig strani. Sicer bi bil input off na levo... Pa za stare mame in take z dolgo lajtngo, like me, pride dodatna obrazložitev prav.

Max rezultatov je 250 (omejitev typesense). Na stran jih gre 20 max (to lahko spremenim na več/manj), se pravi 13 strani max.

Za ta zadnjo, se pravi spremljanje sprememb cen in izris grafa, bo pa še nekaj časa preteklo ker...


Kot rečeno, trenutno popravljam crawlerje, da poberejo še pralne in pralno sušilne stroje. Potem je treba to kategorizirat (~2 dni + še kaj zraven).

Za naprej pa sem si zamislil, da bi dodal še: pomivalni stroj, štedilnik in pečica, hladilnik in škrija, ter opcijsko napa in mikrovalovke.

Ko se to enkrat vse skupaj lepo kategorizira (meni se to zdi solidna celota), se pa lahko špilal z datumi, zgodovino cen in še kak lepotni popravek.


Tako nekako. Hvala za feedbeck.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Kakšen/kater software (ali SQL rešitev) za hitrejši "full text search"?

Oddelek: Programiranje
211271 (513) FireSnake
»

Kater software uporabljate za avtomatizacijo skaliranja?

Oddelek: Programiranje
423103 (1159) pegasus
»

Mariadb (InnoDB) istočasni insert v tabelo iz različnih procesov (strani: 1 2 )

Oddelek: Programiranje
876380 (2738) 2g00d4u
»

Kako pohitrit build-anje index za autocomplete?

Oddelek: Programiranje
11941 (473) DamijanD
»

[SQL] Ali je možno postavit UNIQUE index po grupah?

Oddelek: Programiranje
211476 (877) Spura

Več podobnih tem