Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju.

Autors Sai Ašišs Končada
DalītiesČivinātDalītiesE-pasts

HTML nokasīšana var būt sarežģīta, tāpēc pārliecinieties, ka saprotat šo procesu, nedaudz praktizējot Python.

Twitter ir viena no ietekmīgākajām sociālo mediju platformām, kāda jebkad pastāvējusi. Miljoniem cilvēku, tostarp vadošie politiķi, slavenības un izpilddirektori, katru dienu izmanto šo platformu, lai dalītos savās domās.

Cilne Tendences ir viena no labākajām vietām, kur uzzināt reāllaika ziņas un sociālo mediju noskaņojumu. Varat analizēt un izmantot šos datus, lai plānotu zīmola reklāmas, vadītu kampaņas un palielinātu pārdošanas apjomu. Bet kā jūs varat iegūt desmit populārākās atsauces pakalpojumā Twitter?

Algoritmu veidošanas process

Pirmais solis, lai izveidotu jebkuru programmu, ir atzīmēt un saprast darbības, kas jāveic, lai izveidotu Twitter skrāpi. Viņi ir:

instagram viewer
  1. Atveriet Google Chrome.
  2. Apmeklējiet Twitter populāro lapu.
  3. Apkopojiet atsauces un to attiecīgās lapas saiti.
  4. Saglabājiet datus izklājlapā.

Tas kalpo kā problēmas paziņojuma algoritms.

Twitter tīmekļa vietnes izpratne

Lai tos varētu iegūt, jums jāzina, kā tīmekļa lapa atzīmē savus datus. Tas ļoti palīdz, ja jums ir laba izpratne par HTML pamati un CSS.

Veiciet šīs darbības, lai noskaidrotu, kā Twitter attēlo populāru tēmturi un tā URL:

  1. Apmeklējums Twitter populārākā lapa. Varat arī doties uz Twitter.comIzpētītTendences lai to apskatītu.
  2. Pārbaudiet galveno kolonnu izmantojot Chrome Dev Tools. Iet uz Izvēlne (3 punkti)>Vairāk rīku >Izstrādātāja rīki un virziet elementu atlasītāja rīku virs tendenču apgabala.
  3. Tendenču laika skala ir a div ar an ārijas etiķete atribūts, kura vērtība ir "Laika skala: Izpētīt". Virziet kursoru virs marķējuma sadaļā Elementi paneli, lai labāk izprastu lapas struktūru. Cits div saglabā populārāko mirkļbirku/tēmu. Izmantojiet šo div vienumu kā skaitītāju un atkārtojiet visus divos elementus lapā, kurā ir aktuālā tēma/attēls. Saturs tiek glabāts a span vai pāris laiduma elementi. Ievērojiet atvērto cilni un atzīmējiet hierarhiju. Varat to izmantot, lai izveidotu XPath izteiksmi. XPath izteiksme šim konkrētajam elementam ir:
    '//div[@aria-label="Laika skala: Izpētiet"]/div[1]/div[3]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
    Atkārtojiet un mērķējiet uz div[3], div[4], div[5] un tā tālāk. Desmit populārākajām atsaucēm skaitītājs ir no 3 līdz 13. Vispārinātais XPath kļūst:
    //div[@aria-label="Laika skala: Izpētiet"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
  4. Noklikšķiniet uz jebkura hashtag, lai saprastu tā lapu URL. Salīdzinot vietrāžus URL, ievērojiet, ka mainās tikai vaicājuma parametrs, lai tas atbilstu atsauces nosaukumam. Varat izmantot šo ieskatu, lai izveidotu vietrāžus URL, tos faktiski neizvelkot.

Šajā projektā tiek izmantoti šādi Python moduļi un rīki:

1. Pandas modulis

Jūs varat izmantojiet Pandas DataFrame klasi lai saglabātu atsauces un to attiecīgās saites tabulas formātā. Tas būs noderīgi, pievienojot šo saturu CSV failam, ko varat kopīgot ārēji.

2. Laika modulis

Izmantojiet moduli Time, lai Python programmai pievienotu aizkavi, lai lapas saturs varētu pilnībā ielādēt. Šajā piemērā tiek izmantota 15 sekunžu aizkave, taču varat eksperimentēt un izvēlēties saviem apstākļiem atbilstošu aizkavi.

3. Selēna modulis

Selēns var automatizēt mijiedarbības ar tīmekli procesu. Varat to izmantot, lai kontrolētu tīmekļa pārlūkprogrammas gadījumu, atvērtu aktuālo lapu un ritinātu to uz leju. Lai Python vidē instalētu Selenium, atveriet savu Terminālis un izpildītpip instalēt selēnu.

4. Web draiveris

Izmantojiet tīmekļa draiveri kopā ar Selenium, lai mijiedarbotos ar pārlūkprogrammu. Atkarībā no pārlūkprogrammas, kuru vēlaties automatizēt, ir pieejami dažādi tīmekļa draiveri. Šai versijai izmantojiet populāro pārlūkprogrammu Google Chrome. Lai instalētu tīmekļa draiveri pārlūkam Chrome:

  1. Pārbaudiet izmantotās pārlūkprogrammas versiju, apmeklējot Izvēlne (3 punkti) > Palīdzība>Par Google Chrome.
  2. Ņemiet vērā pārlūkprogrammas versiju; šajā gadījumā tas ir 106.0.5249.62.
  3. Dodieties uz savu Terminālis un tips pip instalēt chromedriver-binary==versijas_numurs:
    pip uzstādīt hroma draiveris-binārs==106.0.5249.62
    Ja atbilstošas ​​versijas nav, pip parādīs pieejamo versiju sarakstu; izvēlieties to, kas ir vistuvāk jūsu Chrome versijai.

Kā izveidot Twitter skrāpi

Veiciet šīs darbības, lai izveidotu programmu un iegūtu reāllaika populāras atsauces. Šeit varat atrast visu avota kodu GitHub repozitorijs.

  1. Importējiet nepieciešamos moduļus Python vidē.
    # nepieciešamo moduļu importēšana
    no selēns imports tīmekļa draiveris
    noselēns.webdriver.bieži.arimportsAutors
    imports chromeddriver_binary
    imports laiks
    imports pandas pd
  2. Izveidojiet objektu, lai inicializētu ChromeDriver, un palaidiet pārlūkprogrammu Google Chrome, izmantojot tīmekļa draiveris. Chrome() funkciju.
    # atveriet pārlūkprogrammu Google Chrome
    pārlūkprogramma = tīmekļa draiveris. Chrome()
  3. Atveriet Twitter populāro lapu, nosūtot tās URL uz gūt() funkciju.
    # atveriet Twitter populārāko lapu
    browser.get('https://twitter.com/explore/tabs/trending')
  4. Izmantojiet aizkavi, lai lapas saturs tiktu ielādēts pilnībā.
    # aizkave lapas satura ielādei
    laiks.Gulēt(15)
  5. Izveidojiet tukšu sarakstu, lai saglabātu atsauces tagus, un deklarējiet cilpu, kas darbojas no 3 līdz 13, lai atbilstu mainīgajam XPath izteiksmē no iepriekšējās.
    # inicializējiet sarakstu, lai saglabātu populārākās tēmas un atsauces
    trending_topic_content=[]

    # apkopo tēmas un atsauces Twitter populārajā lapā
    i diapazonā (3,13):

  6. Izmantojiet atrast_elementu() funkciju un nododiet XPath atlasītāju, lai pakalpojumā Twitter iegūtu populārākās tēmas un atsauces:
    xpath = f'//div[@aria-label="Laika skala: Izpētiet"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
    trending_topic = browser.find_element (pēc XPATH, xpath)
    trending_topic_content.pievienot(tendenču_tēma.teksts)
  7. Izveidojiet tukšu sarakstu, lai saglabātu visus URL, un deklarējiet cilpu, kas iet cauri visiem atsauces tagiem.
    # izveidojiet vietrāžus URL, izmantojot savāktos atsauces tagus
    urls=[]
    man sadaļā trending_topic_content:
    Izmantojiet slice operatoru, lai izlaistu tēmturi, lai izveidotu tā URL un aizstātu atstarpes ar URL kodējumu, %20. Pievienojiet saites sarakstam.
    if i.starts with("#"):
    i = i[1:]
    url='https://twitter.com/search? q=%23' + es + '&src=trend_click'
    cits:
    url = 'https://twitter.com/search? q=' + es + '&src=trend_click'
    url = url.replace("", "%20")
    URL.pievienot(url)
  8. Izveidojiet atslēgu un vērtību pāra vārdnīcu, izmantojot atslēgas kā atsauces un vērtības kā to vietrāžus URL.
    # izveidojiet vārdnīcu, kurā ir gan atsauce, gan vietrāži URL
    dic={'HashTag':trending_topic_content,'URL':urls}
  9. Pārvērtiet nestrukturēto vārdnīcu par tabulas DataFrame.
    # pārveidot vārdnīcu par datu rāmi pandās
    df=pd. DataFrame (dic)
    drukāt(df)
  10. Saglabājiet DataFrame CSV failā, ko varat skatīt programmā Microsoft Excel vai apstrādāt tālāk.
    # konvertēt datu rāmi komatatdalītās vērtības formātā bez sērijas numuriem
    df.to_csv("Twitter_HashTags.csv",index=false)

Gūstiet vērtīgu ieskatu, izmantojot tīmekļa izkopšanu

Tīmekļa skrāpēšana ir spēcīgs veids, kā iegūt vēlamos datus un analizēt tos, lai pieņemtu lēmumus. Skaista zupa ir iespaidīga bibliotēka, kuru varat instalēt un izmantot, lai, izmantojot Python, notīrītu datus no jebkura HTML vai XML faila.

Izmantojot to, jūs varat izkopt internetu, lai iegūtu reāllaika ziņu virsrakstus, produktu cenas, sporta rezultātus, akciju vērtību un daudz ko citu.

Izveidojiet vietni, izmantojot šo skaisto zupas Python pamācību

Lasiet Tālāk

DalītiesČivinātDalītiesE-pasts

Saistītās tēmas

  • Programmēšana
  • Programmēšana
  • Python
  • Web izstrāde
  • Tīmekļa skrāpēšana
  • Twitter

Par autoru

Sai Ašišs Končada (Publicēti 3 raksti)

Sai Ashish ir Full Stack izstrādātājs ar nozares pieredzi vietņu un tīmekļa lietojumprogrammu veidošanā. Viņam patīk veidot novatoriskus produktus un rakstīt saturīgus rakstus par programmēšanu.

Vairāk no Sai Ashish Konchada

komentēt

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai saņemtu tehniskos padomus, pārskatus, bezmaksas e-grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu

On The Wire

šobrīd ir tendence