Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi.
Menggores HTML bisa rumit, jadi pastikan Anda memahami proses ini dengan sedikit latihan Python.
Twitter adalah salah satu platform media sosial paling berpengaruh yang pernah ada. Jutaan orang termasuk politisi papan atas, selebritas, dan CEO menggunakan platform ini untuk membagikan pemikiran mereka setiap hari.
Tab trending adalah salah satu tempat terbaik untuk mengetahui berita real-time dan sentimen media sosial. Anda dapat menganalisis dan menggunakan data ini untuk merencanakan iklan merek, menjalankan kampanye, dan meningkatkan penjualan secara berlipat. Tapi bagaimana Anda bisa mendapatkan sepuluh tagar trending teratas di Twitter?
Proses Pembuatan Algoritma
Langkah pertama untuk membuat program apa pun adalah mencatat dan memahami langkah-langkah yang diperlukan untuk membuat pengikis Twitter. Mereka:
- Buka Google Chrome.
- Kunjungi halaman trending Twitter.
- Kumpulkan tagar dan tautan halaman masing-masing.
- Simpan data dalam spreadsheet.
Ini berfungsi sebagai algoritma pernyataan masalah.
Memahami halaman Web Twitter
Anda perlu mengetahui bagaimana halaman web menandai datanya sebelum Anda dapat mengekstraknya. Ini sangat membantu jika Anda memiliki pemahaman yang baik tentang dasar-dasar HTML dan CSS.
Ikuti langkah-langkah ini untuk mengetahui bagaimana Twitter mewakili trending hashtag dan URL-nya:
- Mengunjungi Halaman trending Twitter. Anda juga dapat menavigasi ke Twitter.com → Mengeksplorasi → Sedang tren untuk melihatnya.
- Periksa kolom utama menggunakan Alat Pengembang Chrome. Pergi ke Menu (3 titik)>Alat Lainnya >Alat pengembang dan arahkan alat pemilih elemen ke area yang sedang tren.
- Garis Waktu Tren adalah a div dengan sebuah aria-label atribut yang nilainya "Linimasa: Jelajahi". Arahkan kursor ke markup di Elemen panel untuk lebih memahami struktur halaman. Lain div menyimpan trending hashtag/topik. Gunakan div ini sebagai penghitung dan ulangi ke semua div di halaman yang berisi topik/hashtag yang sedang tren. Konten disimpan dalam a menjangkau atau beberapa elemen rentang. Amati tab yang terbuka dan catat hierarkinya. Anda dapat menggunakan ini untuk membuat ekspresi XPath. Ekspresi XPath untuk elemen khusus ini adalah:
Ulangi dan targetkan div[3], div[4], div[5], dan seterusnya. Untuk sepuluh tagar teratas, penghitung berjalan dari 3 hingga 13. XPath umum menjadi:'//div[@aria-label="Garis waktu: Jelajahi"]/div[1]/div[3]/div[1]/div[1]/div[1]/div[1]/div[2]/rentang[1]'
//div[@aria-label="Garis waktu: Jelajahi"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
- Klik hashtag apa pun untuk memahami URL halamannya. Jika Anda membandingkan URL, Anda akan melihat bahwa hanya parameter kueri yang berubah agar sesuai dengan nama tagar. Anda dapat menggunakan wawasan ini untuk membuat URL tanpa benar-benar mengekstraknya.
Proyek ini menggunakan modul dan alat Python berikut:
1. Modul Panda
Kamu bisa gunakan kelas Pandas DataFrame untuk menyimpan tagar dan tautannya masing-masing dalam format tabel. Ini akan sangat membantu saat menambahkan konten ini ke file CSV yang dapat Anda bagikan secara eksternal.
2. Modul Waktu
Gunakan modul Time untuk menambahkan penundaan pada program Python agar konten halaman dapat dimuat sepenuhnya. Contoh ini menggunakan penundaan 15 detik, tetapi Anda dapat bereksperimen dan memilih penundaan yang sesuai dengan keadaan Anda.
3. Modul Selenium
Selenium dapat mengotomatiskan proses interaksi dengan web. Anda dapat menggunakannya untuk mengontrol instance browser web, membuka halaman yang sedang tren, dan menggulir ke bawah. Untuk menginstal Selenium di lingkungan Python Anda, buka Terminal dan jalankanpip instal selenium.
4. Pengandar Web
Gunakan driver web yang dikombinasikan dengan Selenium untuk berinteraksi dengan browser. Ada berbagai driver web yang tersedia berdasarkan browser yang ingin Anda otomatisasi. Untuk build ini, gunakan browser Google Chrome yang populer. Untuk menginstal driver web untuk Chrome:
- Periksa versi browser yang Anda gunakan dengan mengunjungi Menu (3 titik) > Bantuan>Tentang Google Chrome.
- Perhatikan versi browser; dalam hal ini, 106.0.5249.62.
- Pergi ke Anda Terminal dan ketik pip instal chromedriver-binary==version_number:
Jika tidak ada versi yang cocok, pip akan menampilkan daftar yang tersedia; pilih yang paling dekat dengan versi chrome Anda.pip Install chromedriver-biner==106.0.5249.62
Cara Membuat Pengikis Twitter
Ikuti langkah-langkah ini untuk membangun program Anda dan dapatkan tagar tren waktu nyata. Anda dapat menemukan kode sumber lengkap di sini Repositori GitHub.
- Impor modul yang diperlukan ke dalam lingkungan Python.
# mengimpor modul yang diperlukan
dari selenium impor webdriver
dariselenium.webdriver.umum.olehimporOleh
impor chromedriver_binary
impor waktu
impor panda sebagai pd - Buat objek untuk menginisialisasi ChromeDriver dan luncurkan browser Google Chrome menggunakan webdriver. Chrome() fungsi.
# buka browser google chrome
browser = webdriver. Chrome() - Buka halaman tren Twitter dengan mengirimkan URL-nya ke mendapatkan() fungsi.
# buka halaman trending Twitter
browser.dapatkan('https://twitter.com/explore/tabs/trending') - Terapkan penundaan agar konten halaman dimuat sepenuhnya.
# tunda untuk pemuatan konten halaman
waktu.tidur(15) - Buat daftar kosong untuk menyimpan tagar dan deklarasikan loop yang berjalan dari 3 hingga 13 untuk mencocokkan variabel dalam ekspresi XPath dari sebelumnya.
# inisialisasi daftar untuk menyimpan topik dan tagar yang sedang tren
trending_topic_content=[]# kumpulkan topik dan tagar di halaman trending Twitter
untuk saya dalam rentang (3,13): - Menggunakan temukan_element() berfungsi dan lewati pemilih XPath untuk mendapatkan topik dan tagar yang sedang tren di Twitter:
xpath = f'//div[@aria-label="Garis waktu: Jelajahi"]/div[1]/div[{i}]/div[1]/div[1]/div[1]/div[1]/div[2]/span[1]'
trending_topic = browser.find_element (Oleh. XPATH, xpath)
trending_topic_content.menambahkan(topik yang sedang tren.teks) - Buat daftar kosong untuk menyimpan semua URL dan mendeklarasikan loop yang berjalan melalui semua tagar.
Gunakan operator irisan untuk menghilangkan tagar untuk membuat URL-nya dan mengganti spasi dengan penyandian URL, %20. Tambahkan tautan ke daftar.# buat URL menggunakan tagar yang dikumpulkan
url=[]
untuk saya di trending_topic_content:jika saya. mulai dengan("#"):
saya = saya[1:]
url='https://twitter.com/search? q=%23' + saya + '&src=tren_klik'
kalau tidak:
url = 'https://twitter.com/search? q=' + saya + '&src=tren_klik'
url = url.ganti("", "%20")
url.menambahkan(url) - Buat Kamus pasangan nilai kunci dengan kunci sebagai tagar dan nilai sebagai URL-nya.
# buat kamus yang memiliki tagar dan URL
dik={'Tanda pagar':trending_topic_content,'URL':url} - Ubah kamus yang tidak terstruktur menjadi DataFrame tabular.
# ubah kamus menjadi kerangka data di panda
df=pd. Bingkai Data (dik)
mencetak(df) - Simpan DataFrame ke file CSV yang dapat Anda lihat di Microsoft Excel atau proses lebih lanjut.
# mengubah kerangka data menjadi format Nilai Terpisah Koma tanpa nomor seri
df.to_csv("Twitter_HashTags.csv", indeks=Salah)
Dapatkan Wawasan Berharga Menggunakan Web Scraping
Pengikisan web adalah metode yang ampuh untuk mendapatkan data yang diinginkan dan menganalisisnya untuk mengambil keputusan. Beautiful Soup adalah perpustakaan mengesankan yang dapat Anda instal dan gunakan untuk mengikis data dari file HTML atau XML apa pun menggunakan Python.
Dengan ini, Anda dapat mengorek internet untuk mendapatkan berita utama real-time, harga produk, skor olahraga, nilai saham, dan banyak lagi.