Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu.

Autor: Sai Ashish Konchada
zdieľamTweetujtezdieľamEmail

Zoškrabovanie HTML môže byť nešikovné, takže sa uistite, že tomuto procesu rozumiete trochou praxe v Pythone.

Twitter je jednou z najvplyvnejších platforiem sociálnych médií, aké kedy existovali. Milióny ľudí vrátane najvyšších politikov, celebrít a generálnych riaditeľov používajú platformu na zdieľanie svojich myšlienok každý deň.

Karta Trendy je jedným z najlepších miest na zistenie správ v reálnom čase a sentimentu sociálnych médií. Tieto údaje môžete analyzovať a použiť na plánovanie reklám na značku, spúšťanie kampaní a zvyšovanie predaja podľa záhybov. Ale ako môžete získať desať najpopulárnejších hashtagov na Twitteri?

Proces budovania algoritmu

Prvým krokom k vytvoreniu akéhokoľvek programu je zaznamenať a pochopiť kroky potrebné na vytvorenie škrabky na Twitteri. Oni sú:

instagram viewer
  1. Otvorte Google Chrome.
  2. Navštívte trendovú stránku Twitteru.
  3. Zhromaždite hashtagy a príslušný odkaz na stránku.
  4. Uložte údaje do tabuľky.

Toto slúži ako algoritmus príkazu na problém.

Pochopenie webovej stránky Twitter

Pred extrahovaním údajov musíte vedieť, ako webová stránka označuje svoje údaje. Veľmi pomáha, ak tomu dobre rozumiete základy HTML a CSS.

Ak chcete zistiť, ako Twitter predstavuje populárny hashtag a jeho adresu URL, postupujte podľa týchto krokov:

  1. Navštívte Populárna stránka na Twitteri. Môžete tiež prejsť na Twitter.comPreskúmajteTrendy na zobrazenie.
  2. Skontrolujte hlavný stĺpec pomocou nástrojov Chrome Dev Tools. Ísť do Menu (3 bodky)>Ďalšie nástroje >Nástroje pre vývojárov a umiestnite kurzor myši na nástroj na výber prvkov nad oblasťou trendov.
  3. Trendová časová os je a div s árie-štítok atribút, ktorého hodnota je "Časová os: Preskúmať". Umiestnite kurzor myši na značku v Prvky panel pre lepšie pochopenie štruktúry stránky. Ďalší div ukladá trendový hashtag/tému. Použite tento div ako počítadlo a iterujte na všetky divy na stránke obsahujúcej trendovú tému/hashtag. Obsah je uložený v a rozpätie alebo pár prvkov rozpätia. Sledujte otvorenú kartu a všimnite si hierarchiu. Môžete to použiť na vytvorenie výrazu XPath. Výraz XPath pre tento špecifický prvok je:
    '//div[@aria-label="Časová os: Preskúmajte"]/div[1]/div[3]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
    Iterujte a zacieľte div[3], div[4], div[5] atď. Pre prvých desať hashtagov je počítadlo od 3 do 13. Zovšeobecnená XPath sa stáva:
    //div[@aria-label="Časová os: Preskúmajte"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
  4. Kliknutím na ktorýkoľvek hashtag pochopíte URL jeho stránok. Ak porovnávate adresy URL, mali by ste si všimnúť, že iba parameter dopytu sa mení tak, aby zodpovedal názvu hashtagu. Tento prehľad môžete použiť na vytváranie adries URL bez toho, aby ste ich skutočne extrahovali.

Tento projekt používa nasledujúce moduly a nástroje Pythonu:

1. Modul Pandas

Môžeš použite triedu Pandas DataFrame na ukladanie hashtagov a ich príslušných odkazov v tabuľkovom formáte. Bude to užitočné pri pridávaní tohto obsahu do súboru CSV, ktorý môžete zdieľať externe.

2. Časový modul

Použite modul Time na pridanie oneskorenia do programu Python, aby sa umožnilo úplné načítanie obsahu stránky. Tento príklad používa oneskorenie 15 sekúnd, ale môžete experimentovať a vybrať si vhodné oneskorenie pre vaše okolnosti.

3. Selénový modul

Selén dokáže automatizovať proces interakcie s webom. Môžete ho použiť na ovládanie inštancie webového prehliadača, otvorenie stránky trendov a posúvanie nadol. Ak chcete nainštalovať Selenium vo svojom prostredí Python, otvorte svoj Terminál a vykonaťpip inštalovať selén.

4. Webový ovládač

Na interakciu s prehliadačom použite webový ovládač v kombinácii so Selenium. V závislosti od prehliadača, ktorý chcete automatizovať, sú k dispozícii rôzne webové ovládače. Pre túto zostavu použite populárny prehliadač Google Chrome. Inštalácia webového ovládača pre Chrome:

  1. Verziu prehliadača, ktorý používate, skontrolujte na stránke Ponuka (3 bodky) > Pomocník>O prehliadači Google Chrome.
  2. Všimnite si verziu prehliadača; v tomto prípade je to 106.0.5249.62.
  3. Choďte do svojho Terminál a typ pip install chromedriver-binary==číslo_verzie:
    pip Inštalácia ovládač chrome-binárne==106.0.5249.62
    Ak neexistuje žiadna zodpovedajúca verzia, pip vám zobrazí zoznam dostupných; vyberte tú, ktorá je najbližšie k vašej chrome verzii.

Ako vytvoriť škrabku na Twitteri

Ak chcete vytvoriť svoj program a získať trendy hashtagy v reálnom čase, postupujte podľa týchto krokov. Kompletný zdrojový kód nájdete v tomto Úložisko GitHub.

  1. Importujte požadované moduly do prostredia Pythonu.
    # importovanie požadovaných modulov
    od selén importovať webový ovládač
    odselén.webdriver.bežné.byimportovaťAutor:
    importovať chromedriver_binary
    importovať čas
    importovať pandy ako pd
  2. Vytvorte objekt na inicializáciu ovládača ChromeDriver a spustite prehliadač Google Chrome pomocou webový ovládač. Chrome() funkciu.
    # otvorte prehliadač Google Chrome
    prehliadač = webový ovládač. Chrome()
  3. Otvorte stránku trendov na Twitteri tak, že jej adresu URL odošlete do dostať () funkciu.
    # otvorte trendovú stránku Twitteru
    browser.get('https://twitter.com/explore/tabs/trending')
  4. Použite oneskorenie, aby sa obsah stránky načítal úplne.
    # oneskorenie načítania obsahu stránky
    čas.spať(15)
  5. Vytvorte prázdny zoznam na uloženie hashtagov a deklarujte cyklus, ktorý beží od 3 do 13, aby sa zhodoval s premennou vo výraze XPath z predchádzajúceho.
    # inicializujte zoznam na ukladanie trendových tém a hashtagov
    trending_topic_content=[]

    # zbierajte témy a značky hash na trendovej stránke Twitteru
    pre i v rozsahu (3,13):

  6. Použi nájsť_prvok() a prejdite selektorom XPath, aby ste získali trendy témy a hashtagy na Twitteri:
    xpath = f'//div[@aria-label="Časová os: Preskúmajte"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
    trending_topic = browser.find_element (Podľa XPATH, xpath)
    trending_topic_content.priložiť(aktuálna téma.text)
  7. Vytvorte prázdny zoznam na uloženie všetkých adries URL a deklarujte slučku, ktorá prechádza všetkými hashtagmi.
    # vytvorte adresy URL pomocou zhromaždených hashtagov
    urls=[]
    pre i v trending_topic_content:
    Pomocou operátora výrezu vynechajte hashtag na vytvorenie jeho URL a nahraďte medzery kódovaním URL, %20. Pridajte odkazy do zoznamu.
    ak i.startswith("#"):
    i = i[1:]
    url='https://twitter.com/search? q=%23' + ja + '&src=trend_click'
    inak:
    url = 'https://twitter.com/search? q=' + ja + '&src=trend_click'
    url = url.replace("", "%20")
    adresy URL.priložiť(url)
  8. Vytvorte slovník párov kľúč – hodnota s kľúčmi ako hashtagmi a hodnotami ako ich adresami URL.
    # vytvorte slovník, ktorý obsahuje hashtag aj adresy URL
    dic={'Mriežka':trending_topic_content,'URL':urls}
  9. Preveďte neštruktúrovaný slovník na tabuľkový DataFrame.
    # previesť slovník na dátový rámec v pandách
    df=pd. DataFrame (dic)
    vytlačiť(df)
  10. Uložte DataFrame do súboru CSV, ktorý môžete zobraziť v programe Microsoft Excel alebo ďalej spracovávať.
    # previesť dátový rámec do formátu Comma Separated Value bez sériových čísel
    df.to_csv("Twitter_HashTags.csv",index=False)

Získajte cenné informácie pomocou skracovania webu

Web scraping je výkonná metóda na získanie požadovaných údajov a ich analýzu na prijímanie rozhodnutí. Beautiful Soup je pôsobivá knižnica, ktorú si môžete nainštalovať a použiť na zoškrabanie údajov z akéhokoľvek súboru HTML alebo XML pomocou Pythonu.

Vďaka tomu môžete zoškrabať internet a získať titulky správ v reálnom čase, ceny produktov, športové výsledky, hodnotu akcií a ďalšie.

Zoškrabte webovú stránku s týmto návodom na krásnu polievku Python

Prečítajte si ďalej

zdieľamTweetujtezdieľamEmail

Súvisiace témy

  • Programovanie
  • Programovanie
  • Python
  • Vývoj webových aplikácií
  • Zoškrabovanie webu
  • Twitter

O autorovi

Sai Ashish Konchada (zverejnené 3 články)

Sai Ashish je Full Stack Developer so skúsenosťami z odvetvia tvorby webových stránok a webových aplikácií. Miluje vytvárať inovatívne produkty a písať zaujímavé články o programovaní.

Viac od Sai Ashish Konchada

Komentujte

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Ak sa chcete prihlásiť na odber, kliknite sem

On The Wire

teraz trendy