Ako písať vyhľadávacie dotazy na grafy na Facebooku?

To znamená, že nepotrebujete vedieť nič o syntaxi vyhľadávacieho dotazu v grafe ani o tom, ako napísať atómové podmienky.
Táto príručka sa zameriava na to, ako používať syntax vyhľadávania Facebooku v grafoch na hľadanie príspevkov, komentárov, ľudí a ďalších entít na Facebooku. Táto príručka kladie dôraz na to, aby ste namiesto písania príkladov dotazov alebo vyčerpávajúceho zoznamu možností vyhľadávania ukázali, ako písať vlastné dotazy.
Časť 1 zo 7: preskúmanie matematických predpokladov
- 1Vedieť, aké sú matematické predpoklady. Hlavnými matematickými predpokladmi rozvíjania plynulosti pri vyhľadávaní v grafoch sú booleovská algebra, naivná teória množín, reverzná poľská notácia a arita operátora.
- S vyhľadávaním v grafoch je možné pracovať aj bez porozumenia týmto témam. Môžete napríklad použiť niektoré z existujúcich rozhraní uvedených v nižšie uvedenej časti „Preskúmať existujúce rozhrania“, upravovať ukážkové vyhľadávania alebo sa držať veľmi jednoduchých dopytov. Túto časť je teda možné pri prvom čítaní preskočiť. Dobré porozumenie týmto témam vám však zaistí, že pri písaní dotazov nerobíte chyby, a umožní vám vytvárať zložité otázky.
- 2Pochopte booleovskú algebru. Booleovská algebra je abstraktný spôsob formalizácie logických pojmov ako „a“, „alebo“ a „nie“. Mnoho vyhľadávacích nástrojov obsahuje booleovskú algebru. Google má napríklad stránku rozšíreného vyhľadávania, kde je možné nájsť pole na vyhľadávanie všetkých daných slov (boolovské „a“), pole na vyhľadávanie akýchkoľvek z daných slov (boolovské „alebo“) a pole na vyhľadávanie. žiadne z daných slov (booleovské „nie“).
- Vyhľadávanie v grafoch na Facebooku obsahuje časti booleovskej algebry. Má predovšetkým rodinu priesečníkových operátorov (zodpovedajúcich boolovským „a“) a rodinu odborových operátorov (zodpovedajúcich boolovským „alebo“). Chýba však pojem negácia, takže neexistuje operátor zodpovedajúci booleovskému „nie“. Konkrétne to znamená, že nemôžete hľadať veci ako „všetky príspevky, ktoré nepísal Mark Zuckerberg“.
- 3Pochopte naivnú teóriu množín. Naivná teória množín je príkladom booleovskej algebry, kde booleovský „a“ sa nazýva priesečník, boolovský „alebo“ sa nazýva únia a boolovský „nie“ sa nazýva množinový doplnok.
- Kľúčový bod je tento: vo vyhľadávaní grafov na Facebooku budú operandy všetky podmienky, ktoré určujú množiny. Napríklad „príspevky, ktoré sa páčia Dustinovi Moskovitzovi“, špecifikujú zbierku (množinu) všetkých príspevkov na Facebooku, ktoré sa „páčili“ Dustinovi Moskovitzovi. Potom pomocou operátorov union a intersect (pamätajte, že máte časť booleovskej algebry) môžete vytvárať nové množiny ako „príspevky napísané Markom Zuckerbergom, ktoré sa páčili Dustinovi Moskovitzovi“, tj. Priesečník „príspevkov napísaných Markom Zuckerbergom“ “a„príspevky, ktoré sa páčili Dustinovi Moskovitzovi “.
- Jedna vec, na ktorú si treba dávať pozor, je, že anglické slovo „a“ môže niekedy znamenať „únia“, napríklad keď sa povie „množina všetkých mačiek a psov“ (toto je spojenie „množiny mačiek“ a „súbor psov “, a nie križovatka). V matematickej logike je veľa podobných jemností; Pre viac informácií viď Tim Gowers, s blog post na logických spojok, ako aj Terence tao 's skript na matematickej logiky a teórie množín.
- 4Rozumejte zápisu reverzného leštenia aka postfixu). Záznam s opačným leštením určuje syntax pre spôsob písania operátorov a operandov. Na popis aritmetiky obvykle používate infixový zápis, napríklad 3 × 4 + 5 = 17 a 3 + 4 × 5 = 23. Pri rozlišovaní medzi týmito dvoma údajmi sa spoliehate na prednosť operátora (napr. Násobenie má väčšiu prednosť ako sčítanie). Inokedy sa pri skupinových operáciách spoliehate na zátvorky, napríklad (8 ÷ 4) ÷ 2 = 1 a 8 ÷ (4 ÷ 2) = 4.
- Naproti tomu notácie prefixu aj postfixu závisia iba od poradia, v ktorom sú operandy a operátory napísané (a od arity operátorov). Napríklad, ak chcete napísať 3 × 4 + 5 v prefixovom (aka poľskom) zápise, napíšete + × 3 4 5, kde implicitné zoskupenie je (+ (× 3 4) 5), a napíšete 3 + 4 × 5 jeden píše × + 3 4 5, kde implicitné zoskupenie je (× (+ 3 4) 5). V zápise postfixu (aka reverznej poľštiny) nasleduje operátor za operandami, takže na zápis 3 × 4 +5 sa píše jeden 3 4 × 5 +, kde implicitné zoskupenie je ((3 4 ×) 5 +) a na zápis 3 + 4 × 5 jeden napíše 3 4 + 5 ×, kde implicitné zoskupenie je ((3 4 +) 5 ×).
- Všimnite si toho, že v zápisoch prefixov a postfixov neexistuje žiadna koncepcia prednosti operátora a žiadna požiadavka používať zátvorky: ktorýkoľvek operátor je na správnom mieste, „hltá“ (dva) argumenty, ktoré nasledujú (v notácii prefixu) alebo pred ním (v zápise postfixu).
- Relevantnosť reverznej poľskej notácie pre vyhľadávanie grafov na Facebooku je nasledovná: vo vyhľadávaní v grafoch na Facebooku sú dotazy napísané v notácii postfixu, kde sa operátorom hovorí „priesečník“ a „únia“ (spolu s ich variantmi). Takže pri hľadaní (A a B) alebo C jeden typ v podstate A B pretne C úniu.
- 5Pochopte aritu operátora. ARITECH of prevádzkovateľa je počet argumentov využije. Napríklad sčítanie aj násobenie majú dve arity (tiež nazývané binárne), pretože obidva používajú dva argumenty. Na rozdiel od toho, ternárny operátor v mnohých programovacích jazykoch používa tri argumenty (tj. Má aritu 3 alebo je ternárny): boolovskú hodnotu (hodnota, ktorá je pravdivá alebo nepravdivá) a dva výrazy a vydá prvý výraz, ak je logická hodnota pravdivá a druhá výraz, ak je boolean nepravdivý.
- Relevantnosť arity pre vyhľadávanie grafov na Facebooku je nasledovná: pri vyhľadávaní v grafoch na Facebooku neexistuje iba jeden zväzok a jeden priesečník. Každý z nich je skôr rodinou operátorov, union, union-2, union-3, union-4 atď. A intersect, intersect-2, intersect-3, intersect-4 atď. Každý variant „-n“ má arity n. Napríklad zväzok 3 vezme tri argumenty A, B, C a vytvorí spojenie všetkých z nich; inými slovami, (A B C zväzok-3) = A ∪ B ∪ C (pamätajte, že používate zápis postfixu!). Špeciálne spojovacie a priesečníkové operátory (bez čísla) majú variabilnú aritu: spotrebujú všetkyargumenty, ktoré stoja pred nimi. Napríklad (zväzok A B C) = A ∪ B ∪ C. Existuje teda niekoľko spôsobov, ako napísať ten istý dotaz.
Časť 2 zo 7: Zistenie identifikačného čísla subjektu
- 1Pochopte, čo je to identifikačné číslo entity. Každý subjekt na Facebooku (napríklad osoba alebo organizácia) má priradené jedinečné identifikačné číslo. Na vytvorenie najužitočnejších dotazov zahŕňajúcich takéto entity budete potrebovať Facebook ID týchto entít.
- 2Nájdite identifikačné číslo osoby. Ak chcete získať Facebook ID osoby, môžete použiť https://stalkscan.com/ alebo https://findmyfbid.com/ alebo kliknúť pravým tlačidlom myši na profilový obrázok používateľa a vybrať „Kopírovať adresu odkazu“ („Kopírovať umiestnenie odkazu“ v niektorých prehliadačoch) a skontrolujte hodnotu
referrer_profile_id
aleboprofile_id
. - 3Vyhľadajte identifikačné číslo organizácie. Ak chcete získať Facebook ID organizácie, prejdite na stránku organizácie, kliknite pravým tlačidlom myši na fotografiu organizácie a zvoľte „Kopírovať adresu odkazu“ (v niektorých prehliadačoch „Kopírovať umiestnenie odkazu“). Potom je identifikačné číslo organizácie prvým číslom za ním
facebook.com
. - 4Vyhľadajte identifikačné číslo pracovného zaradenia. ID pracovného zaradenia je ID stránky zodpovedajúcej pracovnému titulu, ale takýchto stránok môže byť mnoho. Jedným zo spôsobov, ako nájsť identifikačné číslo pracovného miesta, je ísť na https://facebook.com/search/117968858296276/pages/str/JOBTITLE/pages-named/intersect kde
JOBTITLE
je názov pracovného miesta. Potom môžete v adrese URL výsledkov vyhľadávania nájsť ID pracovného miesta. Existujú aj zoznamy obsahujúce ID názvov pracovných miest pre bežné názvy pracovných miest. - 5Nájdite identifikačné číslo skupiny. Ak chcete získať ID skupiny na Facebooku, prejdite na stránku Členovia skupiny a skontrolujte odkaz na hlavičku „Členovia“ na tejto stránke. Identifikačné číslo je číslo, ktoré sa objavia v odkaze.

Ak sa vám nepáči žiadne z vyššie uvedených rozhraní, zvážte hľadanie ďalších pomocou vyhľadávacích výrazov, ako je „nástroj na vyhľadávanie grafov na Facebooku“.
Časť 3 zo 7: porozumenie všeobecnej syntaxi dopytu
- 1Pochopte všeobecný vzorec dopytu. Za všeobecnou syntaxou
https://facebook.com/search/
nasleduje nejaká sekvencia atómových podmienok a operátorov, takže výsledná adresa URL môže vyzerať taktohttps://facebook.com/search/A/B/operator₁/C/operator₂
, kde A, B a C sú atómové podmienky. Každá atómová podmienka špecifikuje jednoduchú množinu, ako je množina všetkých príspevkov napísaných Markom Zuckerbergom. (Viac o atómových podmienkach v nasledujúcej časti.) Každý operátor je jeden z odborov, zväzok-2, zväzok-3 atď. Alebo jeden z priesečníkov, priesečníkov-2, priesečníkov-3 atď. - 2Pochopte zoskupenie operátorov. Ako je vysvetlené v sekcii matematických predpokladov, vyhľadávanie grafov na Facebooku používa zápis postfixu. To znamená, že akonáhle operátor uvidí, „zhltne“ určitý počet argumentov, ktoré sa pred ním objavujú (čo sa líši v závislosti od arity operátora, ďalší koncept vysvetlený v časti matematické predpoklady). Sekvencia ako A / B / C / union-2 / D / intersect-3 groups into (A (B C union-2) D intersect-3), čo znamená to isté ako A∩ (B ∪ C) ∩ D. Špeciálne spojovacie a priesečníkové operátory bez čísla prehltnú všetky argumenty, ktoré mu predchádzali, takže predchádzajúci dotaz mohol byť napísaný aj A / B / C / union-2 / D / intersect alebo B / C / union / A / D /pretínať sa.
- 3Zvážte precvičenie vzoru dotazu. Nasleduje niekoľko cvičení (odpovede uvedené v čiernych políčkach; zvýraznením zobrazíte text):
- Čo znamená dopyt A / B / C / union / D / intersect? (odpoveď: (A ∪ B ∪ C) ∩ D)
- Čo znamená dotaz A / B / C / D / union-2 / intersect / E / union? (odpoveď: (A ∩ B ∩ (C ∪ D)) ∪ E)
- Ako by ste napísali dotaz A alebo (B a C)? (odpoveď: A / B / C / intersect-2 / union funguje, rovnako ako B / C / intersect / A / union)
- Ako by ste napísali dotaz (A a B) alebo (C a D)? (odpoveď: A / B / intersect-2 / C / D / intersect-2 / union-2 funguje, rovnako ako A / B / intersect / C / D / intersect-2 / union)
Časť 4 zo 7: Zistenie atómových podmienok
- 1Pochopte, aké sú atómové podmienky. Atómové podmienky určujú jednoduché množiny, ako napríklad „všetky príspevky napísané Markom Zuckerbergom“, „všetky príspevky o malárii“ alebo „všetci ľudia, ktorí pracovali vo WHO“. V tejto príručke sa tieto podmienky nazývajú „atómové“, pretože ich nemožno rozdeliť na jednoduchšie podmienky. Naproti tomu zložené podmienky, ako napríklad „všetky príspevky napísané Markom Zuckerbergom alebo Dustinom Moskovitzom“, je možné rozdeliť na „všetky príspevky napísané Markom Zuckerbergom“ a „všetky príspevky napísané Dustinom Moskovitzom“ a získať ich prostredníctvom operácie odborov. Pri práci s atómovými podmienkami by ste mali mať na pamäti niekoľko vecí:
- Každý iný typ entity má svoje vlastné atómové podmienky. Atómové podmienky pre príspevky sú napríklad odlišné od ľudských.
- Ďalej nebudeme uvádzať vyčerpávajúci zoznam atómových podmienok, pretože také zoznamy už existujú (na niektoré z týchto zoznamov sa budeme odvolávať na konci tejto časti). Namiesto toho vás naučíme, ako prísť na to, ako napísať požadovaný dotaz.
- Atómové podmienky môžu obsahovať lomku (
/
), aj keď sa lomka používa aj na oddelenie atómových podmienok od seba navzájom a od operátorov. Vždy sa uistite, že viete, či je lomka súčasťou atómových podmienok alebo sa používa ako oddeľovač! - Skratku
me
je možné použiť namiesto vlastného Facebook ID.
- 2Majte na pamäti niektoré atómové podmienky príspevkov. Niektoré z najužitočnejších sú:
str/KEYWORD/stories-keyword
: príspevok obsahujeKEYWORD
; napríkladstr/malaria/stories-keyword
nájde všetky príspevky obsahujúce slovo „malária“GROUPID/stories-in
: vyhľadávanie príspevkov v skupine s IDGROUPID
; napríklad461729987257061/stories-in
nájde všetky príspevky v Akčnej skupine pre otvorené hraniceFACEBOOKID/stories-by
: príspevok od užívateľa s IDFACEBOOKID
; napríklad4/stories-by
nájde všetky príspevky od Marka Zuckerberga (ktorý má Facebook ID 4)FACEBOOKID/stories-liked
: príspevok, ktorý sa páči používateľovi s IDFACEBOOKID
; napríklad4/stories-liked
nájde všetky príspevky, ktoré sa páčia Markovi Zuckerbergovi (ktorý má Facebook ID 4)FACEBOOKID/stories-commented
: príspevok komentovaný užívateľom s IDFACEBOOKID
; napríklad4/stories-commented
nájde všetky príspevky komentované Markom Zuckerbergom (ktorý má Facebook ID 4)YYYY/date/stories
: príspevok vyhotovený v priebehu rokaYYYY
; napríklad2017/date/stories
nájde všetky príspevky z roku 2017MON/YYYY/date-2/stories
: príspevok urobený v priebehu mesiacaMON
v rokuYYYY
; napríkladsep/2017/date-2/stories
nájde všetky príspevky od septembra 2017DD/MON/YYYY/date-3/stories
: príspevok urobený počas dňaDD
v mesiaciMON
v rokuYYYY
; napríklad05/sep/2017/date-3/stories
nájde všetky príspevky uverejnené 5. septembra 2017
- 3Majte na pamäti niektoré atómové podmienky pre ľudí. Niektoré z najužitočnejších sú:
FACEBOOKID/employees/ever
: ľudia, ktorí pracovali v organizáciách s IDFACEBOOKID
FACEBOOKID/friends
: priatelia používateľa s Facebook IDFACEBOOKID
PAGEID/likers
: ľudia, ktorým sa páčila stránka s IDPAGEID
- 4Zistite, kde nájdete kompletnejšie zoznamy atómových podmienok. Nasleduje niekoľko webových stránok alebo dokumentov, ktoré poskytujú úplnejší zoznam atómových podmienok:
- „Operátori vyhľadávania grafov na Facebooku“
- „Odkazy na vyhľadávanie v grafe Facebook“
- „Facebook #Sourcing Tutorial, časť 2“
- „Skrytý jazyk vyhľadávania v grafe na Facebooku - kľúčové slová bez vysvetlenia“
- „Dôležité zmeny vo vyhľadávaní grafov na Facebooku“ (2018).

Relevantnosť arity pre vyhľadávanie grafov na Facebooku je nasledovná: pri vyhľadávaní v grafoch na Facebooku neexistuje iba jeden zväzok a jeden priesečník.
Časť 5 zo 7: zostavenie dotazu
- 1Na zadanie dopytu použite všeobecný vzorec a atómové podmienky. Teraz, keď poznáte všeobecnú syntax dopytu a máte niekoľko príkladov užitočných atómových podmienok, môžete všetko skombinovať do skutočného dopytu. Pravdepodobne najľahšie to urobíte tak, že dotaz neformálne vypíšete v infixovej notácii, potom ho skonvertujete na postfixový zápis a nakoniec nahradíte každú neformálnu podmienku zodpovedajúcou atómovou podmienkou a medzery a zátvorky lomkami. Tu je príklad tohto postupu:
- Predpokladajme, že chcete nájsť všetky príspevky od Marka Zuckerberga alebo Dustina Moskovitza, ktoré boli urobené v roku 2015. Do infixového zápisu to napíšete ako: (by-Mark-Zuckerberg alebo by-Dustin-Moskovitz) a made-in-2015. Teraz konvertujete na postfix ako: ((zväzok Mark-Zuckerberga by-Dustin-Moskovitz) vytvorený v roku 2015). Nakoniec nahradiť neformálne podmienky podľa príslušných atómových podmienok a medzery a zátvorky podľa lomítok:
4/stories-by/6/stories-by/union/2015/date/stories/intersect
.
- Predpokladajme, že chcete nájsť všetky príspevky od Marka Zuckerberga alebo Dustina Moskovitza, ktoré boli urobené v roku 2015. Do infixového zápisu to napíšete ako: (by-Mark-Zuckerberg alebo by-Dustin-Moskovitz) a made-in-2015. Teraz konvertujete na postfix ako: ((zväzok Mark-Zuckerberga by-Dustin-Moskovitz) vytvorený v roku 2015). Nakoniec nahradiť neformálne podmienky podľa príslušných atómových podmienok a medzery a zátvorky podľa lomítok:
- 2Pozrite sa na niekoľko príkladov dotazov. Tu je niekoľko príkladov dotazov, ktoré poskytujú predstavu o tom, čo je možné. Pomocou vyššie uvedených konceptov môžete vytvárať oveľa komplikovanejšie dotazy.
- https://facebook.com/search/str/harvard/stories-keyword/4/stories-by/intersect-príspevky o „Harvarde“, ktoré napísal Mark Zuckerberg
- https://facebook.com/search/4/stories-commented/6/stories-commented/intersect-príspevky, ktoré komentujú Mark Zuckerberg aj Dustin Moskovitz
- https://facebook.com/search/4/stories-liked/6/stories-liked/intersect-príspevky, ktoré sa páčili Markovi Zuckerbergovi aj Dustinovi Moskovitzovi
- https://facebook.com/search/154163327962392/employees/ever - ľudia, ktorí pracovali vo Svetovej zdravotníckej organizácii
- https://facebook.com/search/154163327962392/employees/ever/11309713071/employees/ever/intersect - ľudia, ktorí pracovali vo Svetovej zdravotníckej organizácii aj v Gatesovej nadácii
- https://facebook.com/search/11309713071/employees/ever/pages-liked/book/pages/intersect/ - knihy, ktoré sa páčia ľuďom, ktorí pracovali v Nadácii Gates
- https://facebook.com/search/11/sep/2017/date-3/stories - príspevky zverejnené 11. septembra 2017. Facebook bude uprednostňovať príspevky od vašich priateľov, takže toto je druh triku, ako sa „vrátiť späť“ včas “vášho kanála noviniek pre konkrétny deň
- https://facebook.com/search/4/stories-commented/2010/date/stories/intersect - príspevky z roku 2010, ktoré komentuje Mark Zuckerberg (komentár nemusí byť z roku 2010)
- https://facebook.com/search/4/stories-commented/2009/before/stories/intersect - príspevky spred roku 2009, ktoré komentoval Mark Zuckerberg (komentár nemusí byť spred roku 2009)
- https://facebook.com/search/4/stories-liked/2011/date/stories/intersect - príspevky z roku 2011, ktoré sa páčili Markovi Zuckerbergovi
- https://facebook.com/search/4/stories-tagged/str/cupcake/stories-keyword/2011/date/stories/intersect-príspevky z roku 2011, ktoré sú o cupcakes a kde je označený Mark Zuckerberg
- https://facebook.com/search/4/stories-by/2011/date/stories/intersect - príspevky Marka Zuckerberga z roku 2011
Prečítajte si tiež: Ako zostať súkromný na Facebooku?
Časť 6 zo 7: Pochopenie pohľadu na funkcie vyhľadávania v grafe
- 1Pochopte, aké je zobrazenie funkcií. Existuje sofistikovanejšie zobrazenie vyhľadávania v grafe, ako je zobrazenie uvedené v predchádzajúcich častiach. V tomto novom zobrazení nie sú len sady, ale aj funkcie, ktoré mapujú medzi rôznymi množinami. Funkcie vám umožňujú transformovať množinu objektov jedného typu na množinu objektov iného typu. Výstupmi funkcií budú množiny, na ktorých môžete rovnako ako predtým používať zväzky a priesečníky.
- 2Pochopte všeobecný vzorec funkcie. Funkcia f: → B má objekt typu A a výstupy objekt typu B. V prípade grafu vyhľadávacích funkcií, B bude z formy energie (C) (tj napájanie nastavený na C) pre určitý typ C, čo znamená, že každý výstup bude sám o sebe je množina objektov typu C.
- Okrem toho, každá funkcia f: → výkon (C) indukuje funkcie F: Výkon () → výkon (C), definované F (E) = ⋃ e ∈ E f (e) pre každý E ⊂ A. Inými slovami, F vezme každý objekt e v E, vytvorí f (e) a potom spojí všetky tieto výstupy. Pri vyhľadávaní v grafe f a F sa označujú rovnako, čo môže znieť mätúco, ale v praxi to nie je mätúce. Napríklad príbehy, ktoré sa páčia: Osoba → sila (Príspevok) vráti príspevky, ktoré sa páčia osobe, takže ak vidíte
4/stories-liked
, že ide o príspevky, ktoré sa páčia jednej osobe (v tomto prípade je touto osobou Mark Zuckerberg), ale ak vidíte4/friends/stories-liked
, potom sa predmet, ktorý sa páči príbehom, páči, je skupina ľudí (menovite priatelia Marka Zuckerberga), takže viete, že je to výkonovo nastavená verzia funkcie obľúbenej príbehov.
- Okrem toho, každá funkcia f: → výkon (C) indukuje funkcie F: Výkon () → výkon (C), definované F (E) = ⋃ e ∈ E f (e) pre každý E ⊂ A. Inými slovami, F vezme každý objekt e v E, vytvorí f (e) a potom spojí všetky tieto výstupy. Pri vyhľadávaní v grafe f a F sa označujú rovnako, čo môže znieť mätúco, ale v praxi to nie je mätúce. Napríklad príbehy, ktoré sa páčia: Osoba → sila (Príspevok) vráti príspevky, ktoré sa páčia osobe, takže ak vidíte
- 3Naučte sa typové podpisy bežných funkcií. Ďalej je Osoba skupinou všetkých ľudí, Príspevok je skupinou všetkých príspevkov, Kľúčové slovo je množinou všetkých kľúčových slov, Dátum je množinou všetkých dátumových intervalov, Skupina je skupinou všetkých skupín a Stránka je skupinou všetkých skupín Stránky.
- príbehy, ktoré sa páčia: Osoba → sila (príspevok)
- príbehy od: Osoba → sila (príspevok)
- komentované príbehy: Osoba → moc (Príspevok)
- príbehy-tagged: Osoba → moc (Príspevok)
- príbehy: Dátum → Moc (Príspevok)
- príbehy-kľúčové slovo: Kľúčové slovo → moc (Príspevok)
- obľúbeným stránkam: Osoba → sila (stránka)
- priatelia: Osoba → moc (Osoba)
- zamestnanci: Stránka → moc (Osoba)
- zamestnanci/kedykoľvek: stránka → moc (osoba)
- Páči sa mi: Strana → Moc (Osoba)
- skupiny: Osoba → moc (Skupina)
- príbehy: Skupina → moc (Príspevok)
- nepriatelia: Osoba → moc (Osoba)
- non-groups: Person → power (Group)
- stránky: {kniha, hudobník,...} → sila (stránka)
- muži: sila (osoba)
- záujem používateľov: {muži, ženy, obaja} → sila (osoba)
- politické názory: osoba → moc (stránka)
- členovia: Skupina → moc (osoba)
- 4Pochopte, ako kombinovať funkcie s operátormi zjednotenia a pretínania.
- Predstavte si, že sa pokúšate vyhľadať všetky príspevky, ktoré sa páčia vašim priateľom. Najprv môžeme použiť
me
skratku a funkciu priatelia na to, aby sme vašich priateľov získali akome/friends
. Potom môžeme použiť funkciu príbehy populárne k tomuto skupiny ľudí, aby si príbehy páčili ktorýmkoľvek z nich:me/friends/stories-liked
. - Predstavte si, že sa pokúšate vyhľadať všetky príspevky v skupine Facebook Effective Altruism, ktoré obsahujú slovo „malária“ alebo „zarovnanie“. Táto skupina má ID skupiny 437177563005273. Pretože chceme príspevky, môžeme použiť funkciu stories-in na prechod zo skupiny na jej príspevky. Tiež môžeme použiť funkciu príbehy-kľúčové slová na prechod od každého z kľúčových slov k príspevkom obsahujúcim tieto kľúčové slová. V skutočnosti sa pokúšame nájsť príbehy (účinný altruizmus) a (kľúčové slová (malária) alebo kľúčové slová (zarovnanie)). Pomocou notácie postfixu to môžeme previesť na
str/malaria/stories-keyword/str/alignment/stories-keyword/union/437177563005273/stories-in/intersect
. (Bohužiaľ, v čase písania tohto článku Facebook nevracia príspevky obsahujúce jedno z kľúčových slov.) Všimnite si, že tento príklad mohol byť pochopený pomocou predchádzajúceho pohľadu iba na atómové podmienky. Myslenie na funkcie vám však umožní priradiť význam každému slovu, ako napríklad „príbehy-kľúčové slovo“ a „príbehy-in“.
- Predstavte si, že sa pokúšate vyhľadať všetky príspevky, ktoré sa páčia vašim priateľom. Najprv môžeme použiť

FACEBOOKID/stories-by: príspevok od užívateľa s ID FACEBOOKID; napríklad 4/stories-by nájde všetky príspevky od Marka Zuckerberga (ktorý má Facebook ID 4).
Časť 7 zo 7: skúmanie existujúcich rozhraní
- 1Pochopte, čo pre vás môže webové rozhranie aplikácie urobiť. Na uľahčenie vytvárania vyhľadávacích dotazov v grafoch existuje niekoľko rozhraní webových aplikácií. V rozhraní webovej aplikácie zadáte slová alebo čísla do políčok alebo vyberiete možnosti a potom kliknutím na tlačidlo „Odoslať“ (alebo podobne) zobrazíte výsledky vyhľadávania. To znamená, že nepotrebujete vedieť nič o syntaxe vyhľadávacieho dotazu v grafe ani o tom, ako napísať atómové podmienky. Vďaka tomu sú tieto rozhrania užitočné pre rýchly začiatok. Na druhej strane, žiadne z existujúcich rozhraní nie je veľmi pokročilé, v zmysle schopnosti vytvárať ľubovoľné dotazy s ľubovoľnými podmienkami.
- 2Spoznajte niektoré známejšie rozhrania a funkcie. Niektoré z najznámejších a na funkcie bohatých rozhraní sú:
- Facebook Scanner (stalkscan.com)
- Facebook Search Tool od IntelTechniques.com
- Facebook Graph Search Generator (graph.tips)
- 3Zvážte nájdenie ďalších rozhraní. Ak sa vám nepáči žiadne z vyššie uvedených rozhraní, zvážte hľadanie ďalších pomocou hľadaných výrazov, ako je „nástroj na vyhľadávanie grafov na Facebooku“.

Kľúčový bod je tento: vo vyhľadávaní grafov na Facebooku budú operandy všetky podmienky, ktoré určujú množiny.
- Facebook príležitostne mení možné dotazy, takže niektoré konkrétne podrobnosti v tomto návode môžu v budúcnosti prestať fungovať.
- V prípade niektorých dotazov sa Facebook pokúsi zobraziť anglický preklad dopytu do vyhľadávacieho poľa a názvu stránky;
4/stories-by/6/stories-commented/intersect
má napríklad preklad „Príspevky Marka Zuckerberga komentoval Dustin Moskovitz“. V jednoduchých prípadoch je tento anglický preklad zvyčajne správny, ale v zložitejších prípadoch je anglický preklad na Facebooku niekedy veľmi zlý. V spletitých dopytoch, ako6/stories-commented/union/union/4/stories-by/intersect
je preklad, môže znieť zvláštne („Príspevky Marka Zuckerberga, ktoré sú príspevkami alebo sú komentované Dustinom Moskovitzom alebo sú príspevkami“). V ešte komplikovanejších prípadoch sa Facebook vzdá a nezobrazí anglický preklad. V takýchto prípadoch sa nebojte; dotaz funguje, ale preklad je nespoľahlivý.
Súvisiace články