Beranda BlogPengikisan web 5 Kasus Penggunaan Web Scraping untuk Usaha Kecil (Termasuk Cuplikan Kode)

5 Kasus Penggunaan Web Scraping untuk Usaha Kecil (Termasuk Cuplikan Kode)

oleh Kadek

Sangat mudah bagi perusahaan besar untuk merogoh kocek lebih dalam dalam hal pengumpulan data. Mereka memiliki anggaran untuk menggunakan metode berbeda dalam menganalisis titik data guna membuat keputusan yang lebih akurat. Sebagai imbalannya, mereka memberikan keuntungan yang tidak adil kepada orang lain.

Namun, data tidak hanya diperuntukkan bagi perusahaan besar; Ini adalah pola pikir yang perlu diubah. Bisnis kecil mana pun bisa Pengikisan web untuk meningkatkan upaya pengumpulan datanya dan memperoleh manfaat yang sama. (Faktanya, web scraping dapat membantu Anda mengurangi biaya dengan menyederhanakan pengambilan keputusan dan mengotomatiskan tugas yang berulang dan memakan waktu.)

Untuk membantu Anda memulai, berikut lima kasus penggunaan untuk membantu Anda mengembangkan bisnis (termasuk cuplikan kode!) tanpa menghabiskan anggaran Anda:

1. Pemantauan merek dan manajemen reputasi online

Penting untuk mengetahui bagaimana perasaan audiens tentang merek, produk, dan layanan Anda. Setelah Anda memahami hal ini, Anda dapat mengalihkan pembicaraan dengan mengatasi masalah atau hal-hal yang tidak berhasil.

Dengan memantau percakapan online seputar merek Anda, Anda juga selalu dapat melihat arah yang perlu diambil (misalnya meluncurkan produk baru atau menambahkan fitur), atau bahkan mencegah potensi bencana PR sehingga tim Anda dapat mengambil tindakan, bukan hanya bereaksi.

Hal ini mengharuskan tim Anda untuk terus menelusuri media sosial, situs web, forum, dan agregator untuk menangkap percakapan yang terjadi, dan seperti yang dapat Anda bayangkan, berapa pun ukuran tim Anda, melakukan ini secara manual tanpa menugaskannya adalah tugas yang mustahil. masukkan banyak anggaran pemasaran atau PR Anda ke dalamnya. Sebagai gantinya, Anda dapat menggunakan web scraper untuk merayapi platform tempat percakapan ini berlangsung, seperti forum dan media sosial, dan mengotomatiskan prosesnya.

Dengan menambang data ini, Anda dapat menganalisis percakapan seputar industri dan merek Anda untuk memahami apakah sentimen yang dibagikan itu positif atau negatif dan mendapatkan wawasan menarik dari pelanggan Anda.

Contoh skrip: Ekstrak data Twitter menggunakan Python

Meskipun ada banyak sumber yang dapat Anda cari, berikut adalah skrip Python sederhana namun ampuh untuk memasukkan data Twitter ke dalam file CSV:

import snscrape.modules.twitter as sntwitter

import pandas as pd

hashtag = ‘scraperapi’

limit = 10

tweets = ()

for tweet in sntwitter.TwitterHashtagScraper(hashtag).get_items():

  if len(tweets) == limit:

     break

  else:

     tweets.append((tweet.date, tweet.user.username, tweet.rawContentcontent))

df = pd.DataFrame(tweets, columns=(‘Date’, ‘User’, ‘Tweet’))

df.to_csv(‘scraped-tweets.csv’, index=False, encoding=‘utf-8’)

Skrip ini memungkinkan Anda mengumpulkan data dari hashtag Twitter apa pun. Lebih khusus lagi, Anda dapat menangkap tanggal, nama pengguna, dan konten setiap tweet di hasil hashtag dan semuanya diekspor sebagai file CSV. Untuk contoh ini, kami mencari #scraperapi dan menetapkan batasnya menjadi 10. Berikut adalah file CSV yang dihasilkan:

Contoh CSV untuk goresan TwitterContoh CSV untuk goresan Twitter

Beberapa pertimbangan saat menggunakan skrip:

  • Anda dapat mengganti hastag yang ingin dicoret dengan cara mengganti kata pada variabel >hashtag>
  • Jangan menambahkan simbol pound ke hashtag atau itu tidak akan berhasil
  • Anda dapat mengubah jumlah tweet yang dikembalikan dengan mengubah angka di variabel limit
  • Anda harus menginstal Python dan perpustakaan Permintaan di komputer Anda

Jika Anda tidak yakin cara mengaturnya atau ingin mempelajari cara mengikis kueri dan hashtag tingkat lanjut, lihat tutorial kami tentang mengikis data Twitter.

2. Kecerdasan harga

Bagian penting dari strategi bisnis Anda adalah menentukan harga produk Anda.

Strategi penetapan harga yang baik memastikan Anda mengoptimalkan nilai produk dan meningkatkan margin keuntungan tanpa merugikan penjualan atau mengganggu pelanggan Anda. Untuk mengoptimalkan harga, Anda memerlukan lebih dari sekedar biaya mentah operasi Anda. Anda perlu memahami perubahan pasar dan model penetapan harga pesaing Anda sehingga Anda dapat mengembangkan strategi yang menjamin daya saing. Namun, mengumpulkan data yang cukup (dalam hal kuantitas dan variasi) untuk menarik kesimpulan yang bermakna akan terlalu membebani tim Anda.

Sebagai gantinya, Anda dapat menggunakan web scraping untuk secara otomatis mengambil informasi ini dari pasar pesaing dan situs harga, dan lain-lain. Sebagai permulaan dan jika Anda berada di bidang eCommerce, kami menyarankan Anda memulai dengan dua sumber data produk terbesar:

Amazon dan Google Belanja.

Dengan mengambil data harga dari platform ini, Anda dapat memperoleh wawasan tentang berapa rata-rata pelanggan membayar untuk produk serupa, berapa harga yang dikenakan pesaing Anda, dan bahkan harga biasa yang ditetapkan pengecer. Selain itu, pengumpulan data produk secara rutin memungkinkan Anda membuat kumpulan data historis yang kemudian dapat Anda analisis untuk mengidentifikasi tren dan perubahan harga sebelum pesaing Anda dan bahkan menyiapkan sistem otomatis untuk mengubah harga Anda secara dinamis.

Contoh skrip: Ekstrak data produk dari Google Shopping

Berikut adalah skrip siap pakai yang dapat Anda gunakan untuk mengumpulkan informasi harga dari Google Shopping dalam permintaan pencarian tertentu:

import requests

import json

products = ()

payload = {
  ‘api_key’: ‘YOUR_API_KEY’,
  ‘query’: ‘gps+tracker’
}

response = requests.get(‘https://api.scraperapi.com/structured/google/shopping’, params=payload)

product_data = response.json()

for product in product_data(“shopping_results”):

   products.append({
       ‘Product Name’: product(“title”),
       ‘Price’: product(“price”),
       ‘URL’: product(“link”),
   })

with open(‘prices.json’, ‘w’, encoding=‘utf-8’) as file:

   json.dump(products, file, ensure_ascii=False, indent=4)

Dalam contoh ini, kami menghapus kueri penelusuran “Pelacak GPS” dan mengekstrak nama, harga, dan URL setiap produk di hasil penelusuran. Setelah skrip dijalankan, hasil akhirnya adalah file JSON dengan 60 produk:

Contoh lanskap produk di AmazonContoh lanskap produk di Amazon

Beberapa pertimbangan saat menggunakan skrip:

  • Untuk menyederhanakan kode, kami menggunakan endpoint Google Shopping ScraperAPI, yang menangani sebagian besar kerumitan teknis, memungkinkan kami fokus hanya pada kueri yang datanya ingin kami ekstrak.
  • Anda harus membuat akun ScraperAPI gratis untuk memiliki akses ke kunci API Anda. Ini akan memberi Anda 5.000 kredit API gratis, jadi Anda tidak perlu berkomitmen pada paket berbayar untuk menggunakan skrip ini
  • Tambahkan kunci API Anda di parameter api_key
  • Ubah kata kunci yang ingin Anda cari dalam parameter kueri. Namun perlu diperhatikan bahwa Anda harus mengganti spasi dengan tanda plus
  • Script ini selalu membuat file baru atau menimpa file yang sudah ada dengan nama yang sama. Ada dua solusi cepat untuk mengubah perilaku ini jika Anda mau
    • Ubah nama “with open('(file_name).json', 'w', binding='utf-8′) as file:” untuk membuat file baru, atau
    • Ubah parameter "w" menjadi "a" sehingga skrip mengetahui untuk menambahkan data ke file dengan nama yang sama, "dengan open('prices.json', 'a',encoding='utf- 8 ′) sebagai berkas :“

Untuk memperdalam ilmunya, berikut tutorial lengkap scraping data produk Amazon (termasuk harga dan gambar) yang bisa Anda ikuti.

Untuk informasi lebih lanjut tentang pengikisan eCommerce, lihat panduan kami untuk mengekstrak data produk dari Etsy dan dasar-dasar pengikisan web di eBay.

3. Generasi pemimpin B2B

Prospek adalah inti dari operasi bisnis Anda, namun menciptakan sistem yang menjamin konsistensi tidaklah semudah yang dibayangkan orang lain.

Bagi perusahaan B2B, menghasilkan prospek baru yang terus-menerus menawarkan layanan dan produk Anda sama pentingnya dengan udara bagi manusia.

Tanpa perencanaan yang tepat dan alat modern, proses ini dapat merepotkan dan dengan mudah merusak bisnis Anda. Terakhir, perolehan prospek berdampak langsung pada biaya akuisisi pelanggan Anda.

Anda mungkin sudah tahu kemana tujuan kita dengan ini, bukan?

Dengan web scraping, prospek B2B dapat dikumpulkan dengan biaya yang jauh lebih rendah dan dalam skala yang lebih besar. Membuat saluran prospek Anda sendiri memastikan CAC yang lebih rendah dan memungkinkan tim penjualan Anda melakukan yang terbaik: menjual! Anda dapat mengumpulkan data perusahaan dari direktori terbuka dan platform publik di seluruh web. Jadi ini lebih tentang menetapkan kriteria yang jelas mengenai di mana dan jenis informasi apa yang Anda kumpulkan. Berhentilah mengkhawatirkan apakah Anda menemukan prospek yang bagus atau tidak.

Beberapa platform yang dapat Anda pertimbangkan pada awalnya adalah:

  • LinkedIn
  • kopel
  • G2
  • Google Peta
  • DanB
  • pintu kaca

Namun Anda juga dapat mencari platform khusus niche untuk jenis prospek yang Anda cari.

Contoh skrip: Mengikis data perusahaan Glassdoor

Sebagai contoh, berikut adalah skrip yang mengambil perusahaan peringkat teratas dalam kategori pendidikan Glassdoor:

import requests

from bs4 import BeautifulSoup

import json

companies_data = ()

payload = {
   ‘api_key’: ‘YOUR_API_KEY’,
   ‘render’: ‘true’,
   ‘url’: ‘https://www.glassdoor.com/Explore/browse-companies.htm?overall_rating_low=3.5&page=1§or=10009&filterType=RATING_OVERALL’
}

response = requests.get(‘https://api.scraperapi.com’, params=payload)

soup = BeautifulSoup(response.content, ‘html.parser’)

company_cards = soup.select(‘div(data-test=”employer-card-single”)’)

for company in company_cards:

   company_name = company.find(‘h2’, attrs={‘data-test’: ’employer-short-name’}).text

   company_size = company.find(‘span’, attrs={‘data-test’: ’employer-size’}).text

   industry = company.find(‘span’, attrs={‘data-test’: ’employer-industry’}).text

   description = company.find(‘p’, class_=‘css-1sj9xzx’).text

   companies_data.append({
       ‘Company’: company_name,
       ‘Size’: company_size,
       ‘Industry’: industry,
       ‘Description’: description
   })

with open(‘companies.json’, ‘w’, encoding=‘utf-8’) as file:

   json.dump(companies_data, file, ensure_ascii=False, indent=4)

Berbeda dengan dua contoh kami sebelumnya, Glassdoor memerlukan skrip yang lebih disesuaikan. Kami menulis ini menggunakan perpustakaan Python Requests dan BeautifulSoup untuk mengekstrak nama, ukuran, industri, dan deskripsi masing-masing perusahaan. (Kami juga menggunakan titik akhir ScraperAPI untuk melewati anti-goresan Glassdoor dan menghindari pemblokiran IP kami.)

Berikut adalah file JSON yang dihasilkan:

Pengikisan generasi pemimpinPengikisan generasi pemimpin

Tentu saja, Anda dapat melangkah lebih jauh dan menelusuri beberapa kategori dan seluruh rangkaian halaman kategori tersebut dan membuat daftar ratusan perusahaan hanya dalam beberapa menit. Untuk mempelajari langkah-langkah tepat yang kami ikuti untuk membuat skrip ini dan memahami bagaimana Anda dapat menskalakan proyek ini untuk bisnis Anda, lihat tutorial scraping Glassdoor kami.

Setelah membaca tutorial, Anda dapat menggunakan skrip yang sama untuk mengekstrak data dari kategori lain dan mengatur opsi pemfilteran berbeda untuk mempersempit daftar prospek Anda ke perusahaan yang Anda minati.

4. Pantau iklan pencarian pesaing Anda

Iklan adalah salah satu pengeluaran pemasaran terbesar. Oleh karena itu, menargetkan kata kunci yang tepat dan mengoptimalkan teks iklan dan halaman arahan Anda sangat penting untuk meningkatkan RKT dan tingkat konversi. Seperti halnya investasi lainnya, mengumpulkan data yang relevan untuk membuat hipotesis berdasarkan fakta dapat membantu Anda berinvestasi dengan lebih percaya diri dan menyederhanakan keseluruhan proses.

Terkait iklan, penting untuk memahami posisi pesaing Anda, di mana mereka berinvestasi, seberapa sering mereka muncul di laman hasil mesin pencari (SERP), dan laman landas mana yang berkinerja terbaik. Hal ini dapat memberikan gambaran yang jelas kepada tim periklanan Anda, yang dapat menggunakan data ini untuk mengoptimalkan kampanye Anda, mengurangi biaya, dan meningkatkan ROI.

Contoh skrip: Ekstrak data iklan dari hasil pencarian Google

Kali ini kami akan menggunakan endpoint Google Penelusuran ScraperAPI untuk mengekstrak iklan pada SERP kata kunci target kami:

import requests

import json

all_ads = ()

payload = {
   ‘api_key’: ‘YOUR_API_KEY’,
   ‘country’: “us”,
   ‘query’: ‘web+hosting’
}

response = requests.get(‘https://api.scraperapi.com/structured/google/search’, params=payload)

results = response.json()

for ad in results(“ads”):

   all_ads.append({
       ‘Title’: ad(“title”),
       ‘Description’: ad(“description”),
       ‘Landing’: ad(“link”)
   })

with open(‘search_ads.json’, ‘w’, encoding=‘utf-8’) as file:

   json.dump(all_ads, file, ensure_ascii=False, indent=4)

Saat menjalankan skrip, ScraperAPI mengekstrak judul, deskripsi, dan URL setiap iklan yang ditemukan di halaman hasil pencarian untuk kata kunci target dan mengirimkan datanya ke file JSON. Meskipun Anda dapat menelusuri lebih banyak halaman, hampir tidak ada klik yang dihasilkan pada iklan ini. Oleh karena itu, tidak apa-apa untuk tetap menggunakan iklan di halaman pertama setiap kata kunci yang Anda minati.

JSON mengembalikan iklan Google yang dihapusJSON mengembalikan iklan Google yang dihapus

Beberapa pertimbangan saat menggunakan skrip ini:

  • Seperti sebelumnya, Anda memerlukan akun ScraperAPI gratis dan menambahkan API di parameter api_key di dalam payload
  • Tetapkan kata kunci yang ingin Anda targetkan dalam parameter kueri dan ganti spasi dengan tanda plus (+).
  • Karena iklan bergantung pada lokasi, ubah nilai negara ke lokasi yang Anda inginkan menggunakan salah satu kode negara berikut
  • Ubah nama file atau atur agar ditambahkan ('a') untuk menghindari kehilangan data sebelumnya

Untuk informasi lebih lanjut, lihat panduan kami untuk mengumpulkan data pesaing guna meningkatkan kampanye periklanan Anda dan bagaimana web scraping dapat meningkatkan pengambilan keputusan pemasaran.

5. Pemantauan inventaris dan keuangan

Perusahaan investasi kecil memahami pentingnya data untuk investasi berkinerja tinggi dan berisiko rendah. Tanpa data yang akurat, sulit untuk memahami dan memprediksi pergerakan pasar. Hal ini menyebabkan hilangnya peluang besar atau, lebih buruk lagi, kegagalan dalam memprediksi dan mencegah kerugian.

Bagi UKM keuangan, kemunduran apa pun berpotensi menyebabkan mereka keluar dari kompetisi, sehingga pengumpulan data menjadi lebih penting bagi operasional Anda. Pengikisan web memungkinkan Anda membangun saluran data alternatif untuk mengumpulkan data sebanyak mungkin tentang perusahaan tempat Anda ingin berinvestasi.

Poin data utama yang dapat Anda kumpulkan secara otomatis dan konsisten mencakup data produk, harga saham, dan berita keuangan real-time.

Contoh skrip: Ekstrak data saham dari Investing.com

Untuk membantu Anda memulai perjalanan ini, berikut adalah skrip yang mudah digunakan untuk mengumpulkan data saham dari Investing.com:

import requests

from bs4 import BeautifulSoup

import csv

from urllib.parse import urlencode

urls = (
   ‘https://www.investing.com/equities/nike’,
   ‘https://www.investing.com/equities/coca-cola-co’,
   ‘https://www.investing.com/equities/microsoft-corp’,
)

file = open(‘stockprices.csv’, ‘w’)

writer = csv.writer(file)

writer.writerow((‘Company’, ‘Price’, ‘Change’))

for url in urls:

   params = {‘api_key’: ‘YOUR_API_KEY’, ‘render’: ‘true’, ‘url’: url}

   page = requests.get(‘http://api.scraperapi.com/’, params=urlencode(params))

   soup = BeautifulSoup(page.text, ‘html.parser’)

   company = soup.find(‘h1’, {‘class’:‘text-2xl font-semibold instrument-header_title__gCaMF mobile:mb-2’}).text

   price = soup.find(‘div’, {‘class’: ‘instrument-price_instrument-price__xfgbB flex items-end flex-wrap font-bold’}).select(‘span’)(0).text

   change = soup.find(‘div’, {‘class’: ‘instrument-price_instrument-price__xfgbB flex items-end flex-wrap font-bold’}).select(‘span’)(2).text

   print(‘Loading :’, url)

   print(company, price, change)

   writer.writerow((company.encode(‘utf-8’), price.encode(‘utf-8’), change.encode(‘utf-8’)))

file.close()

Saat Anda menjalankan skrip, file CSV baru dibuat dengan nama, harga, dan persentase perubahan semua saham yang Anda tambahkan ke >daftar. Dalam contoh ini, kami mengumpulkan data untuk Nike, Coca-Cola, dan Microsoft:

Penghapusan masalah keuangan Penghapusan masalah keuangan

Beberapa pertimbangan saat menggunakan skrip ini:

  • Sebelum menjalankan, buat akun ScraperAPI gratis dan tambahkan kunci API Anda di parameter yang sesuai
  • Saat Anda membuka halaman saham di Investing.com, URL seperti https://www.investing.com/equities/amazon-com-inc dibuat. Tambahkan semua URL yang ingin Anda pantau ke daftar URL - tidak diperlukan konfigurasi tambahan
  • Karenanya, skrip membuat file baru setiap saat. Namun, Anda bisa mengubah perilaku ini untuk membuat kolom baru di file yang sudah ada. Hal ini memungkinkan Anda untuk mulai membangun kumpulan data historis dan bukan hanya titik data satu kali saja

Jika Anda ingin mempelajari cara kami membuat skrip ini, lihat panduan pengikisan harga saham kami. Anda dapat mengikuti proses pemikiran kami langkah demi langkah.

Ringkasan

Daripada mengharuskan seluruh tim mengumpulkan, membersihkan, dan menganalisis data, web scraping memungkinkan Anda mengotomatiskan semua tugas yang memakan waktu ini.

Dalam artikel ini, kami hanya menggores permukaan lautan peluang yang dapat dibuka oleh web scraping untuk bisnis Anda. Jika Anda tetap berpikiran terbuka, scraper dapat menjadi alat yang ampuh untuk memperkuat pengambilan keputusan Anda, mengotomatiskan seluruh proses seperti migrasi data dan entri data, mengintegrasikan sumber data ke dalam satu database atau dasbor, dan banyak lagi.

Kami berharap salah satu dari lima skrip ini dapat membantu Anda memulai web scraping. Jika Anda masih baru, lihatlah blog kami. Ini penuh dengan proyek yang dapat Anda pelajari dan inspirasi.

Sampai jumpa lagi, selamat menggores!

Pos terkait